<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html xmlns:yui="http://yuilibrary.com/rdf/1.0/yui.rdf#">
<head>
    <meta http-equiv="content-type" content="text/html; charset=UTF-8" />
	<title>API: container   Panel.js  (YUI Library)</title>

	<link rel="stylesheet" type="text/css" href="assets/reset-fonts-grids-min.css" />
	<link rel="stylesheet" type="text/css" href="assets/api.css" />

    <script type="text/javascript" src="assets/api-js"></script>
    <script type="text/javascript" src="assets/ac-js"></script>
</head>

<body id="yahoo-com">

<div id="doc3" class="yui-t2">
	<div id="hd">
        <h1><a href="http://developer.yahoo.com/yui/" title="Yahoo! UI Library">Yahoo! UI Library</a></h1>
        <h3>Container&nbsp; <span class="subtitle">2.9.0</span></h3>
        <a href="./index.html" title="Yahoo! UI Library">Yahoo! UI Library</a> 
            &gt; <a href="./module_container.html" title="container">container</a>
                
                 &gt; Panel.js (source view) 
        <form onsubmit="return false">
            <div id="propertysearch">
                Search: <input autocomplete="off" id="searchinput" />
                <div id="searchresults">
                    &nbsp;
                </div>
            </div>
        </form>
	</div>

	<div id="bd">
		<div id="yui-main">
			<div class="yui-b">
            <form action="#" name="yui-classopts-form" method="get" id="yui-classopts-form">
                <fieldset>
                    <legend>Filters</legend>
                <span class="classopts"><input type="checkbox" name="show_private" id="show_private" /> <label for="show_private">Show Private</label></span>
                <span class="classopts"><input type="checkbox" name="show_protected" id="show_protected" /> <label for="show_protected">Show Protected</label></span>
                <span class="classopts"><input type="checkbox" name="show_deprecated" id="show_deprecated" /> <label for="show_deprecated">Show Deprecated</label></span>
                </fieldset>
            </form>

                    <div id="srcout">
                        <style>
                            #doc3 .classopts { display:none; }
                        </style>
                        <div class="highlight"><pre><span class="p">(</span><span class="kd">function</span> <span class="p">()</span> <span class="p">{</span>

    <span class="cm">/**</span>
<span class="cm">    * Panel is an implementation of Overlay that behaves like an OS window, </span>
<span class="cm">    * with a draggable header and an optional close icon at the top right.</span>
<span class="cm">    * @namespace YAHOO.widget</span>
<span class="cm">    * @class Panel</span>
<span class="cm">    * @extends YAHOO.widget.Overlay</span>
<span class="cm">    * @constructor</span>
<span class="cm">    * @param {String} el The element ID representing the Panel &lt;em&gt;OR&lt;/em&gt;</span>
<span class="cm">    * @param {HTMLElement} el The element representing the Panel</span>
<span class="cm">    * @param {Object} userConfig The configuration object literal containing </span>
<span class="cm">    * the configuration that should be set for this Panel. See configuration </span>
<span class="cm">    * documentation for more details.</span>
<span class="cm">    */</span>
    <span class="nx">YAHOO</span><span class="p">.</span><span class="nx">widget</span><span class="p">.</span><span class="nx">Panel</span> <span class="o">=</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">el</span><span class="p">,</span> <span class="nx">userConfig</span><span class="p">)</span> <span class="p">{</span>
        <span class="nx">YAHOO</span><span class="p">.</span><span class="nx">widget</span><span class="p">.</span><span class="nx">Panel</span><span class="p">.</span><span class="nx">superclass</span><span class="p">.</span><span class="nx">constructor</span><span class="p">.</span><span class="nx">call</span><span class="p">(</span><span class="k">this</span><span class="p">,</span> <span class="nx">el</span><span class="p">,</span> <span class="nx">userConfig</span><span class="p">);</span>
    <span class="p">};</span>

    <span class="kd">var</span> <span class="nx">_currentModal</span> <span class="o">=</span> <span class="kc">null</span><span class="p">;</span>

    <span class="kd">var</span> <span class="nx">Lang</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="p">.</span><span class="nx">lang</span><span class="p">,</span>
        <span class="nx">Util</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="p">.</span><span class="nx">util</span><span class="p">,</span>
        <span class="nx">Dom</span> <span class="o">=</span> <span class="nx">Util</span><span class="p">.</span><span class="nx">Dom</span><span class="p">,</span>
        <span class="nx">Event</span> <span class="o">=</span> <span class="nx">Util</span><span class="p">.</span><span class="nx">Event</span><span class="p">,</span>
        <span class="nx">CustomEvent</span> <span class="o">=</span> <span class="nx">Util</span><span class="p">.</span><span class="nx">CustomEvent</span><span class="p">,</span>
        <span class="nx">KeyListener</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="p">.</span><span class="nx">util</span><span class="p">.</span><span class="nx">KeyListener</span><span class="p">,</span>
        <span class="nx">Config</span> <span class="o">=</span> <span class="nx">Util</span><span class="p">.</span><span class="nx">Config</span><span class="p">,</span>
        <span class="nx">Overlay</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="p">.</span><span class="nx">widget</span><span class="p">.</span><span class="nx">Overlay</span><span class="p">,</span>
        <span class="nx">Panel</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="p">.</span><span class="nx">widget</span><span class="p">.</span><span class="nx">Panel</span><span class="p">,</span>
        <span class="nx">UA</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="p">.</span><span class="nx">env</span><span class="p">.</span><span class="nx">ua</span><span class="p">,</span>

        <span class="nx">bIEQuirks</span> <span class="o">=</span> <span class="p">(</span><span class="nx">UA</span><span class="p">.</span><span class="nx">ie</span> <span class="o">&amp;&amp;</span> <span class="p">(</span><span class="nx">UA</span><span class="p">.</span><span class="nx">ie</span> <span class="o">&lt;=</span> <span class="mi">6</span> <span class="o">||</span> <span class="nb">document</span><span class="p">.</span><span class="nx">compatMode</span> <span class="o">==</span> <span class="s2">&quot;BackCompat&quot;</span><span class="p">)),</span>

        <span class="nx">m_oMaskTemplate</span><span class="p">,</span>
        <span class="nx">m_oUnderlayTemplate</span><span class="p">,</span>
        <span class="nx">m_oCloseIconTemplate</span><span class="p">,</span>

        <span class="cm">/**</span>
<span class="cm">        * Constant representing the name of the Panel&#39;s events</span>
<span class="cm">        * @property EVENT_TYPES</span>
<span class="cm">        * @private</span>
<span class="cm">        * @final</span>
<span class="cm">        * @type Object</span>
<span class="cm">        */</span>
        <span class="nx">EVENT_TYPES</span> <span class="o">=</span> <span class="p">{</span>
            <span class="s2">&quot;BEFORE_SHOW_MASK&quot;</span> <span class="o">:</span> <span class="s2">&quot;beforeShowMask&quot;</span><span class="p">,</span>
            <span class="s2">&quot;BEFORE_HIDE_MASK&quot;</span> <span class="o">:</span> <span class="s2">&quot;beforeHideMask&quot;</span><span class="p">,</span>
            <span class="s2">&quot;SHOW_MASK&quot;</span><span class="o">:</span> <span class="s2">&quot;showMask&quot;</span><span class="p">,</span>
            <span class="s2">&quot;HIDE_MASK&quot;</span><span class="o">:</span> <span class="s2">&quot;hideMask&quot;</span><span class="p">,</span>
            <span class="s2">&quot;DRAG&quot;</span><span class="o">:</span> <span class="s2">&quot;drag&quot;</span>
        <span class="p">},</span>

        <span class="cm">/**</span>
<span class="cm">        * Constant representing the Panel&#39;s configuration properties</span>
<span class="cm">        * @property DEFAULT_CONFIG</span>
<span class="cm">        * @private</span>
<span class="cm">        * @final</span>
<span class="cm">        * @type Object</span>
<span class="cm">        */</span>
        <span class="nx">DEFAULT_CONFIG</span> <span class="o">=</span> <span class="p">{</span>

            <span class="s2">&quot;CLOSE&quot;</span><span class="o">:</span> <span class="p">{</span> 
                <span class="nx">key</span><span class="o">:</span> <span class="s2">&quot;close&quot;</span><span class="p">,</span> 
                <span class="nx">value</span><span class="o">:</span> <span class="kc">true</span><span class="p">,</span> 
                <span class="nx">validator</span><span class="o">:</span> <span class="nx">Lang</span><span class="p">.</span><span class="nx">isBoolean</span><span class="p">,</span> 
                <span class="nx">supercedes</span><span class="o">:</span> <span class="p">[</span><span class="s2">&quot;visible&quot;</span><span class="p">]</span> 
            <span class="p">},</span>

            <span class="s2">&quot;DRAGGABLE&quot;</span><span class="o">:</span> <span class="p">{</span>
                <span class="nx">key</span><span class="o">:</span> <span class="s2">&quot;draggable&quot;</span><span class="p">,</span> 
                <span class="nx">value</span><span class="o">:</span> <span class="p">(</span><span class="nx">Util</span><span class="p">.</span><span class="nx">DD</span> <span class="o">?</span> <span class="kc">true</span> <span class="o">:</span> <span class="kc">false</span><span class="p">),</span> 
                <span class="nx">validator</span><span class="o">:</span> <span class="nx">Lang</span><span class="p">.</span><span class="nx">isBoolean</span><span class="p">,</span> 
                <span class="nx">supercedes</span><span class="o">:</span> <span class="p">[</span><span class="s2">&quot;visible&quot;</span><span class="p">]</span>  
            <span class="p">},</span>

            <span class="s2">&quot;DRAG_ONLY&quot;</span> <span class="o">:</span> <span class="p">{</span>
                <span class="nx">key</span><span class="o">:</span> <span class="s2">&quot;dragonly&quot;</span><span class="p">,</span>
                <span class="nx">value</span><span class="o">:</span> <span class="kc">false</span><span class="p">,</span>
                <span class="nx">validator</span><span class="o">:</span> <span class="nx">Lang</span><span class="p">.</span><span class="nx">isBoolean</span><span class="p">,</span>
                <span class="nx">supercedes</span><span class="o">:</span> <span class="p">[</span><span class="s2">&quot;draggable&quot;</span><span class="p">]</span>
            <span class="p">},</span>

            <span class="s2">&quot;UNDERLAY&quot;</span><span class="o">:</span> <span class="p">{</span> 
                <span class="nx">key</span><span class="o">:</span> <span class="s2">&quot;underlay&quot;</span><span class="p">,</span> 
                <span class="nx">value</span><span class="o">:</span> <span class="s2">&quot;shadow&quot;</span><span class="p">,</span> 
                <span class="nx">supercedes</span><span class="o">:</span> <span class="p">[</span><span class="s2">&quot;visible&quot;</span><span class="p">]</span> 
            <span class="p">},</span>

            <span class="s2">&quot;MODAL&quot;</span><span class="o">:</span> <span class="p">{</span> 
                <span class="nx">key</span><span class="o">:</span> <span class="s2">&quot;modal&quot;</span><span class="p">,</span> 
                <span class="nx">value</span><span class="o">:</span> <span class="kc">false</span><span class="p">,</span> 
                <span class="nx">validator</span><span class="o">:</span> <span class="nx">Lang</span><span class="p">.</span><span class="nx">isBoolean</span><span class="p">,</span> 
                <span class="nx">supercedes</span><span class="o">:</span> <span class="p">[</span><span class="s2">&quot;visible&quot;</span><span class="p">,</span> <span class="s2">&quot;zindex&quot;</span><span class="p">]</span>
            <span class="p">},</span>

            <span class="s2">&quot;KEY_LISTENERS&quot;</span><span class="o">:</span> <span class="p">{</span>
                <span class="nx">key</span><span class="o">:</span> <span class="s2">&quot;keylisteners&quot;</span><span class="p">,</span>
                <span class="nx">suppressEvent</span><span class="o">:</span> <span class="kc">true</span><span class="p">,</span>
                <span class="nx">supercedes</span><span class="o">:</span> <span class="p">[</span><span class="s2">&quot;visible&quot;</span><span class="p">]</span>
            <span class="p">},</span>

            <span class="s2">&quot;STRINGS&quot;</span> <span class="o">:</span> <span class="p">{</span>
                <span class="nx">key</span><span class="o">:</span> <span class="s2">&quot;strings&quot;</span><span class="p">,</span>
                <span class="nx">supercedes</span><span class="o">:</span> <span class="p">[</span><span class="s2">&quot;close&quot;</span><span class="p">],</span>
                <span class="nx">validator</span><span class="o">:</span> <span class="nx">Lang</span><span class="p">.</span><span class="nx">isObject</span><span class="p">,</span>
                <span class="nx">value</span><span class="o">:</span> <span class="p">{</span>
                    <span class="nx">close</span><span class="o">:</span> <span class="s2">&quot;Close&quot;</span>
                <span class="p">}</span>
            <span class="p">}</span>
        <span class="p">};</span>

    <span class="cm">/**</span>
<span class="cm">    * Constant representing the default CSS class used for a Panel</span>
<span class="cm">    * @property YAHOO.widget.Panel.CSS_PANEL</span>
<span class="cm">    * @static</span>
<span class="cm">    * @final</span>
<span class="cm">    * @type String</span>
<span class="cm">    */</span>
    <span class="nx">Panel</span><span class="p">.</span><span class="nx">CSS_PANEL</span> <span class="o">=</span> <span class="s2">&quot;yui-panel&quot;</span><span class="p">;</span>
    
    <span class="cm">/**</span>
<span class="cm">    * Constant representing the default CSS class used for a Panel&#39;s </span>
<span class="cm">    * wrapping container</span>
<span class="cm">    * @property YAHOO.widget.Panel.CSS_PANEL_CONTAINER</span>
<span class="cm">    * @static</span>
<span class="cm">    * @final</span>
<span class="cm">    * @type String</span>
<span class="cm">    */</span>
    <span class="nx">Panel</span><span class="p">.</span><span class="nx">CSS_PANEL_CONTAINER</span> <span class="o">=</span> <span class="s2">&quot;yui-panel-container&quot;</span><span class="p">;</span>

    <span class="cm">/**</span>
<span class="cm">     * Constant representing the default set of focusable elements </span>
<span class="cm">     * on the pagewhich Modal Panels will prevent access to, when</span>
<span class="cm">     * the modal mask is displayed</span>
<span class="cm">     * </span>
<span class="cm">     * @property YAHOO.widget.Panel.FOCUSABLE</span>
<span class="cm">     * @static</span>
<span class="cm">     * @type Array</span>
<span class="cm">     */</span>
    <span class="nx">Panel</span><span class="p">.</span><span class="nx">FOCUSABLE</span> <span class="o">=</span> <span class="p">[</span>
        <span class="s2">&quot;a&quot;</span><span class="p">,</span>
        <span class="s2">&quot;button&quot;</span><span class="p">,</span>
        <span class="s2">&quot;select&quot;</span><span class="p">,</span>
        <span class="s2">&quot;textarea&quot;</span><span class="p">,</span>
        <span class="s2">&quot;input&quot;</span><span class="p">,</span>
        <span class="s2">&quot;iframe&quot;</span>
    <span class="p">];</span>

    <span class="c1">// Private CustomEvent listeners</span>

    <span class="cm">/* </span>
<span class="cm">        &quot;beforeRender&quot; event handler that creates an empty header for a Panel </span>
<span class="cm">        instance if its &quot;draggable&quot; configuration property is set to &quot;true&quot; </span>
<span class="cm">        and no header has been created.</span>
<span class="cm">    */</span>

    <span class="kd">function</span> <span class="nx">createHeader</span><span class="p">(</span><span class="nx">p_sType</span><span class="p">,</span> <span class="nx">p_aArgs</span><span class="p">)</span> <span class="p">{</span>
        <span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="k">this</span><span class="p">.</span><span class="nx">header</span> <span class="o">&amp;&amp;</span> <span class="k">this</span><span class="p">.</span><span class="nx">cfg</span><span class="p">.</span><span class="nx">getProperty</span><span class="p">(</span><span class="s2">&quot;draggable&quot;</span><span class="p">))</span> <span class="p">{</span>
            <span class="k">this</span><span class="p">.</span><span class="nx">setHeader</span><span class="p">(</span><span class="s2">&quot;&amp;#160;&quot;</span><span class="p">);</span>
        <span class="p">}</span>
    <span class="p">}</span>

    <span class="cm">/* </span>
<span class="cm">        &quot;hide&quot; event handler that sets a Panel instance&#39;s &quot;width&quot;</span>
<span class="cm">        configuration property back to its original value before </span>
<span class="cm">        &quot;setWidthToOffsetWidth&quot; was called.</span>
<span class="cm">    */</span>

    <span class="kd">function</span> <span class="nx">restoreOriginalWidth</span><span class="p">(</span><span class="nx">p_sType</span><span class="p">,</span> <span class="nx">p_aArgs</span><span class="p">,</span> <span class="nx">p_oObject</span><span class="p">)</span> <span class="p">{</span>

        <span class="kd">var</span> <span class="nx">sOriginalWidth</span> <span class="o">=</span> <span class="nx">p_oObject</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span>
            <span class="nx">sNewWidth</span> <span class="o">=</span> <span class="nx">p_oObject</span><span class="p">[</span><span class="mi">1</span><span class="p">],</span>
            <span class="nx">oConfig</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">cfg</span><span class="p">,</span>
            <span class="nx">sCurrentWidth</span> <span class="o">=</span> <span class="nx">oConfig</span><span class="p">.</span><span class="nx">getProperty</span><span class="p">(</span><span class="s2">&quot;width&quot;</span><span class="p">);</span>

        <span class="k">if</span> <span class="p">(</span><span class="nx">sCurrentWidth</span> <span class="o">==</span> <span class="nx">sNewWidth</span><span class="p">)</span> <span class="p">{</span>
            <span class="nx">oConfig</span><span class="p">.</span><span class="nx">setProperty</span><span class="p">(</span><span class="s2">&quot;width&quot;</span><span class="p">,</span> <span class="nx">sOriginalWidth</span><span class="p">);</span>
        <span class="p">}</span>

        <span class="k">this</span><span class="p">.</span><span class="nx">unsubscribe</span><span class="p">(</span><span class="s2">&quot;hide&quot;</span><span class="p">,</span> <span class="nx">restoreOriginalWidth</span><span class="p">,</span> <span class="nx">p_oObject</span><span class="p">);</span>
    <span class="p">}</span>

    <span class="cm">/* </span>
<span class="cm">        &quot;beforeShow&quot; event handler that sets a Panel instance&#39;s &quot;width&quot;</span>
<span class="cm">        configuration property to the value of its root HTML </span>
<span class="cm">        elements&#39;s offsetWidth</span>
<span class="cm">    */</span>

    <span class="kd">function</span> <span class="nx">setWidthToOffsetWidth</span><span class="p">(</span><span class="nx">p_sType</span><span class="p">,</span> <span class="nx">p_aArgs</span><span class="p">)</span> <span class="p">{</span>

        <span class="kd">var</span> <span class="nx">oConfig</span><span class="p">,</span>
            <span class="nx">sOriginalWidth</span><span class="p">,</span>
            <span class="nx">sNewWidth</span><span class="p">;</span>

        <span class="k">if</span> <span class="p">(</span><span class="nx">bIEQuirks</span><span class="p">)</span> <span class="p">{</span>

            <span class="nx">oConfig</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">cfg</span><span class="p">;</span>
            <span class="nx">sOriginalWidth</span> <span class="o">=</span> <span class="nx">oConfig</span><span class="p">.</span><span class="nx">getProperty</span><span class="p">(</span><span class="s2">&quot;width&quot;</span><span class="p">);</span>
            
            <span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">sOriginalWidth</span> <span class="o">||</span> <span class="nx">sOriginalWidth</span> <span class="o">==</span> <span class="s2">&quot;auto&quot;</span><span class="p">)</span> <span class="p">{</span>
    
                <span class="nx">sNewWidth</span> <span class="o">=</span> <span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">element</span><span class="p">.</span><span class="nx">offsetWidth</span> <span class="o">+</span> <span class="s2">&quot;px&quot;</span><span class="p">);</span>
    
                <span class="nx">oConfig</span><span class="p">.</span><span class="nx">setProperty</span><span class="p">(</span><span class="s2">&quot;width&quot;</span><span class="p">,</span> <span class="nx">sNewWidth</span><span class="p">);</span>

                <span class="k">this</span><span class="p">.</span><span class="nx">subscribe</span><span class="p">(</span><span class="s2">&quot;hide&quot;</span><span class="p">,</span> <span class="nx">restoreOriginalWidth</span><span class="p">,</span> 
                    <span class="p">[(</span><span class="nx">sOriginalWidth</span> <span class="o">||</span> <span class="s2">&quot;&quot;</span><span class="p">),</span> <span class="nx">sNewWidth</span><span class="p">]);</span>
            
            <span class="p">}</span>
        <span class="p">}</span>
    <span class="p">}</span>

    <span class="nx">YAHOO</span><span class="p">.</span><span class="nx">extend</span><span class="p">(</span><span class="nx">Panel</span><span class="p">,</span> <span class="nx">Overlay</span><span class="p">,</span> <span class="p">{</span>

        <span class="cm">/**</span>
<span class="cm">        * The Overlay initialization method, which is executed for Overlay and </span>
<span class="cm">        * all of its subclasses. This method is automatically called by the </span>
<span class="cm">        * constructor, and  sets up all DOM references for pre-existing markup, </span>
<span class="cm">        * and creates required markup if it is not already present.</span>
<span class="cm">        * @method init</span>
<span class="cm">        * @param {String} el The element ID representing the Overlay &lt;em&gt;OR&lt;/em&gt;</span>
<span class="cm">        * @param {HTMLElement} el The element representing the Overlay</span>
<span class="cm">        * @param {Object} userConfig The configuration object literal </span>
<span class="cm">        * containing the configuration that should be set for this Overlay. </span>
<span class="cm">        * See configuration documentation for more details.</span>
<span class="cm">        */</span>
        <span class="nx">init</span><span class="o">:</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">el</span><span class="p">,</span> <span class="nx">userConfig</span><span class="p">)</span> <span class="p">{</span>
            <span class="cm">/*</span>
<span class="cm">                 Note that we don&#39;t pass the user config in here yet because </span>
<span class="cm">                 we only want it executed once, at the lowest subclass level</span>
<span class="cm">            */</span>

            <span class="nx">Panel</span><span class="p">.</span><span class="nx">superclass</span><span class="p">.</span><span class="nx">init</span><span class="p">.</span><span class="nx">call</span><span class="p">(</span><span class="k">this</span><span class="p">,</span> <span class="nx">el</span><span class="cm">/*, userConfig*/</span><span class="p">);</span>

            <span class="k">this</span><span class="p">.</span><span class="nx">beforeInitEvent</span><span class="p">.</span><span class="nx">fire</span><span class="p">(</span><span class="nx">Panel</span><span class="p">);</span>

            <span class="nx">Dom</span><span class="p">.</span><span class="nx">addClass</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">element</span><span class="p">,</span> <span class="nx">Panel</span><span class="p">.</span><span class="nx">CSS_PANEL</span><span class="p">);</span>

            <span class="k">this</span><span class="p">.</span><span class="nx">buildWrapper</span><span class="p">();</span>

            <span class="k">if</span> <span class="p">(</span><span class="nx">userConfig</span><span class="p">)</span> <span class="p">{</span>
                <span class="k">this</span><span class="p">.</span><span class="nx">cfg</span><span class="p">.</span><span class="nx">applyConfig</span><span class="p">(</span><span class="nx">userConfig</span><span class="p">,</span> <span class="kc">true</span><span class="p">);</span>
            <span class="p">}</span>

            <span class="k">this</span><span class="p">.</span><span class="nx">subscribe</span><span class="p">(</span><span class="s2">&quot;showMask&quot;</span><span class="p">,</span> <span class="k">this</span><span class="p">.</span><span class="nx">_addFocusHandlers</span><span class="p">);</span>
            <span class="k">this</span><span class="p">.</span><span class="nx">subscribe</span><span class="p">(</span><span class="s2">&quot;hideMask&quot;</span><span class="p">,</span> <span class="k">this</span><span class="p">.</span><span class="nx">_removeFocusHandlers</span><span class="p">);</span>
            <span class="k">this</span><span class="p">.</span><span class="nx">subscribe</span><span class="p">(</span><span class="s2">&quot;beforeRender&quot;</span><span class="p">,</span> <span class="nx">createHeader</span><span class="p">);</span>

            <span class="k">this</span><span class="p">.</span><span class="nx">subscribe</span><span class="p">(</span><span class="s2">&quot;render&quot;</span><span class="p">,</span> <span class="kd">function</span><span class="p">()</span> <span class="p">{</span>
                <span class="k">this</span><span class="p">.</span><span class="nx">setFirstLastFocusable</span><span class="p">();</span>
                <span class="k">this</span><span class="p">.</span><span class="nx">subscribe</span><span class="p">(</span><span class="s2">&quot;changeContent&quot;</span><span class="p">,</span> <span class="k">this</span><span class="p">.</span><span class="nx">setFirstLastFocusable</span><span class="p">);</span>
            <span class="p">});</span>

            <span class="k">this</span><span class="p">.</span><span class="nx">subscribe</span><span class="p">(</span><span class="s2">&quot;show&quot;</span><span class="p">,</span> <span class="k">this</span><span class="p">.</span><span class="nx">_focusOnShow</span><span class="p">);</span>

            <span class="k">this</span><span class="p">.</span><span class="nx">initEvent</span><span class="p">.</span><span class="nx">fire</span><span class="p">(</span><span class="nx">Panel</span><span class="p">);</span>
        <span class="p">},</span>

        <span class="cm">/**</span>
<span class="cm">         * @method _onElementFocus</span>
<span class="cm">         * @private</span>
<span class="cm">         *</span>
<span class="cm">         * &quot;focus&quot; event handler for a focuable element. Used to automatically</span>
<span class="cm">         * blur the element when it receives focus to ensure that a Panel</span>
<span class="cm">         * instance&#39;s modality is not compromised.</span>
<span class="cm">         *</span>
<span class="cm">         * @param {Event} e The DOM event object</span>
<span class="cm">         */</span>
        <span class="nx">_onElementFocus</span> <span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">e</span><span class="p">){</span>

            <span class="k">if</span><span class="p">(</span><span class="nx">_currentModal</span> <span class="o">===</span> <span class="k">this</span><span class="p">)</span> <span class="p">{</span>

                <span class="kd">var</span> <span class="nx">target</span> <span class="o">=</span> <span class="nx">Event</span><span class="p">.</span><span class="nx">getTarget</span><span class="p">(</span><span class="nx">e</span><span class="p">),</span>
                    <span class="nx">doc</span> <span class="o">=</span> <span class="nb">document</span><span class="p">.</span><span class="nx">documentElement</span><span class="p">,</span>
                    <span class="nx">insideDoc</span> <span class="o">=</span> <span class="p">(</span><span class="nx">target</span> <span class="o">!==</span> <span class="nx">doc</span> <span class="o">&amp;&amp;</span> <span class="nx">target</span> <span class="o">!==</span> <span class="nb">window</span><span class="p">);</span>

                <span class="c1">// mask and documentElement checks added for IE, which focuses on the mask when it&#39;s clicked on, and focuses on </span>
                <span class="c1">// the documentElement, when the document scrollbars are clicked on</span>
                <span class="k">if</span> <span class="p">(</span><span class="nx">insideDoc</span> <span class="o">&amp;&amp;</span> <span class="nx">target</span> <span class="o">!==</span> <span class="k">this</span><span class="p">.</span><span class="nx">element</span> <span class="o">&amp;&amp;</span> <span class="nx">target</span> <span class="o">!==</span> <span class="k">this</span><span class="p">.</span><span class="nx">mask</span> <span class="o">&amp;&amp;</span> <span class="o">!</span><span class="nx">Dom</span><span class="p">.</span><span class="nx">isAncestor</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">element</span><span class="p">,</span> <span class="nx">target</span><span class="p">))</span> <span class="p">{</span>
                    <span class="k">try</span> <span class="p">{</span>
                        <span class="k">this</span><span class="p">.</span><span class="nx">_focusFirstModal</span><span class="p">();</span>
                    <span class="p">}</span> <span class="k">catch</span><span class="p">(</span><span class="nx">err</span><span class="p">){</span>
                        <span class="c1">// Just in case we fail to focus</span>
                        <span class="k">try</span> <span class="p">{</span>
                            <span class="k">if</span> <span class="p">(</span><span class="nx">insideDoc</span> <span class="o">&amp;&amp;</span> <span class="nx">target</span> <span class="o">!==</span> <span class="nb">document</span><span class="p">.</span><span class="nx">body</span><span class="p">)</span> <span class="p">{</span>
                                <span class="nx">target</span><span class="p">.</span><span class="nx">blur</span><span class="p">();</span>
                            <span class="p">}</span>
                        <span class="p">}</span> <span class="k">catch</span><span class="p">(</span><span class="nx">err2</span><span class="p">)</span> <span class="p">{</span> <span class="p">}</span>
                    <span class="p">}</span>
                <span class="p">}</span>
            <span class="p">}</span>
        <span class="p">},</span>

        <span class="cm">/**</span>
<span class="cm">         * Focuses on the first element if present, otherwise falls back to the focus mechanisms used for </span>
<span class="cm">         * modality. This method does not try/catch focus failures. The caller is responsible for catching exceptions,</span>
<span class="cm">         * and taking remedial measures.</span>
<span class="cm">         * </span>
<span class="cm">         * @method _focusFirstModal</span>
<span class="cm">         */</span>
        <span class="nx">_focusFirstModal</span> <span class="o">:</span> <span class="kd">function</span><span class="p">()</span> <span class="p">{</span>
            <span class="kd">var</span> <span class="nx">el</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">firstElement</span><span class="p">;</span>
            <span class="k">if</span> <span class="p">(</span><span class="nx">el</span><span class="p">)</span> <span class="p">{</span>
                <span class="nx">el</span><span class="p">.</span><span class="nx">focus</span><span class="p">();</span>
            <span class="p">}</span> <span class="k">else</span> <span class="p">{</span>
                <span class="k">if</span> <span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">_modalFocus</span><span class="p">)</span> <span class="p">{</span>
                    <span class="k">this</span><span class="p">.</span><span class="nx">_modalFocus</span><span class="p">.</span><span class="nx">focus</span><span class="p">();</span>
                <span class="p">}</span> <span class="k">else</span> <span class="p">{</span>
                    <span class="k">this</span><span class="p">.</span><span class="nx">innerElement</span><span class="p">.</span><span class="nx">focus</span><span class="p">();</span>
                <span class="p">}</span>
            <span class="p">}</span>
        <span class="p">},</span>

        <span class="cm">/** </span>
<span class="cm">         *  @method _addFocusHandlers</span>
<span class="cm">         *  @protected</span>
<span class="cm">         *  </span>
<span class="cm">         *  &quot;showMask&quot; event handler that adds a &quot;focus&quot; event handler to all</span>
<span class="cm">         *  focusable elements in the document to enforce a Panel instance&#39;s </span>
<span class="cm">         *  modality from being compromised.</span>
<span class="cm">         *</span>
<span class="cm">         *  @param p_sType {String} Custom event type</span>
<span class="cm">         *  @param p_aArgs {Array} Custom event arguments</span>
<span class="cm">         */</span>
        <span class="nx">_addFocusHandlers</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">p_sType</span><span class="p">,</span> <span class="nx">p_aArgs</span><span class="p">)</span> <span class="p">{</span>
            <span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="k">this</span><span class="p">.</span><span class="nx">firstElement</span><span class="p">)</span> <span class="p">{</span>
                <span class="k">if</span> <span class="p">(</span><span class="nx">UA</span><span class="p">.</span><span class="nx">webkit</span> <span class="o">||</span> <span class="nx">UA</span><span class="p">.</span><span class="nx">opera</span><span class="p">)</span> <span class="p">{</span>
                    <span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="k">this</span><span class="p">.</span><span class="nx">_modalFocus</span><span class="p">)</span> <span class="p">{</span>
                        <span class="k">this</span><span class="p">.</span><span class="nx">_createHiddenFocusElement</span><span class="p">();</span>
                    <span class="p">}</span>
                <span class="p">}</span> <span class="k">else</span> <span class="p">{</span>
                    <span class="k">this</span><span class="p">.</span><span class="nx">innerElement</span><span class="p">.</span><span class="nx">tabIndex</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span>
                <span class="p">}</span>
            <span class="p">}</span>
            <span class="k">this</span><span class="p">.</span><span class="nx">_setTabLoop</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">firstElement</span><span class="p">,</span> <span class="k">this</span><span class="p">.</span><span class="nx">lastElement</span><span class="p">);</span>
            <span class="nx">Event</span><span class="p">.</span><span class="nx">onFocus</span><span class="p">(</span><span class="nb">document</span><span class="p">.</span><span class="nx">documentElement</span><span class="p">,</span> <span class="k">this</span><span class="p">.</span><span class="nx">_onElementFocus</span><span class="p">,</span> <span class="k">this</span><span class="p">,</span> <span class="kc">true</span><span class="p">);</span>
            <span class="nx">_currentModal</span> <span class="o">=</span> <span class="k">this</span><span class="p">;</span>
        <span class="p">},</span>

        <span class="cm">/**</span>
<span class="cm">         * Creates a hidden focusable element, used to focus on,</span>
<span class="cm">         * to enforce modality for browsers in which focus cannot</span>
<span class="cm">         * be applied to the container box.</span>
<span class="cm">         * </span>
<span class="cm">         * @method _createHiddenFocusElement</span>
<span class="cm">         * @private</span>
<span class="cm">         */</span>
        <span class="nx">_createHiddenFocusElement</span> <span class="o">:</span> <span class="kd">function</span><span class="p">()</span> <span class="p">{</span>
            <span class="kd">var</span> <span class="nx">e</span> <span class="o">=</span> <span class="nb">document</span><span class="p">.</span><span class="nx">createElement</span><span class="p">(</span><span class="s2">&quot;button&quot;</span><span class="p">);</span>
            <span class="nx">e</span><span class="p">.</span><span class="nx">style</span><span class="p">.</span><span class="nx">height</span> <span class="o">=</span> <span class="s2">&quot;1px&quot;</span><span class="p">;</span>
            <span class="nx">e</span><span class="p">.</span><span class="nx">style</span><span class="p">.</span><span class="nx">width</span> <span class="o">=</span> <span class="s2">&quot;1px&quot;</span><span class="p">;</span>
            <span class="nx">e</span><span class="p">.</span><span class="nx">style</span><span class="p">.</span><span class="nx">position</span> <span class="o">=</span> <span class="s2">&quot;absolute&quot;</span><span class="p">;</span>
            <span class="nx">e</span><span class="p">.</span><span class="nx">style</span><span class="p">.</span><span class="nx">left</span> <span class="o">=</span> <span class="s2">&quot;-10000em&quot;</span><span class="p">;</span>
            <span class="nx">e</span><span class="p">.</span><span class="nx">style</span><span class="p">.</span><span class="nx">opacity</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span>
            <span class="nx">e</span><span class="p">.</span><span class="nx">tabIndex</span> <span class="o">=</span> <span class="o">-</span><span class="mi">1</span><span class="p">;</span>
            <span class="k">this</span><span class="p">.</span><span class="nx">innerElement</span><span class="p">.</span><span class="nx">appendChild</span><span class="p">(</span><span class="nx">e</span><span class="p">);</span>
            <span class="k">this</span><span class="p">.</span><span class="nx">_modalFocus</span> <span class="o">=</span> <span class="nx">e</span><span class="p">;</span>
        <span class="p">},</span>

        <span class="cm">/**</span>
<span class="cm">         *  @method _removeFocusHandlers</span>
<span class="cm">         *  @protected</span>
<span class="cm">         *</span>
<span class="cm">         *  &quot;hideMask&quot; event handler that removes all &quot;focus&quot; event handlers added </span>
<span class="cm">         *  by the &quot;addFocusEventHandlers&quot; method.</span>
<span class="cm">         *</span>
<span class="cm">         *  @param p_sType {String} Event type</span>
<span class="cm">         *  @param p_aArgs {Array} Event Arguments</span>
<span class="cm">         */</span>
        <span class="nx">_removeFocusHandlers</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">p_sType</span><span class="p">,</span> <span class="nx">p_aArgs</span><span class="p">)</span> <span class="p">{</span>
            <span class="nx">Event</span><span class="p">.</span><span class="nx">removeFocusListener</span><span class="p">(</span><span class="nb">document</span><span class="p">.</span><span class="nx">documentElement</span><span class="p">,</span> <span class="k">this</span><span class="p">.</span><span class="nx">_onElementFocus</span><span class="p">,</span> <span class="k">this</span><span class="p">);</span>

            <span class="k">if</span> <span class="p">(</span><span class="nx">_currentModal</span> <span class="o">==</span> <span class="k">this</span><span class="p">)</span> <span class="p">{</span>
                <span class="nx">_currentModal</span> <span class="o">=</span> <span class="kc">null</span><span class="p">;</span>
            <span class="p">}</span>
        <span class="p">},</span>

        <span class="cm">/**</span>
<span class="cm">         * Focus handler for the show event</span>
<span class="cm">         *</span>
<span class="cm">         * @method _focusOnShow</span>
<span class="cm">         * @param {String} type Event Type</span>
<span class="cm">         * @param {Array} args Event arguments</span>
<span class="cm">         * @param {Object} obj Additional data </span>
<span class="cm">         */</span>
        <span class="nx">_focusOnShow</span> <span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">type</span><span class="p">,</span> <span class="nx">args</span><span class="p">,</span> <span class="nx">obj</span><span class="p">)</span> <span class="p">{</span>

            <span class="k">if</span> <span class="p">(</span><span class="nx">args</span> <span class="o">&amp;&amp;</span> <span class="nx">args</span><span class="p">[</span><span class="mi">1</span><span class="p">])</span> <span class="p">{</span>
                <span class="nx">Event</span><span class="p">.</span><span class="nx">stopEvent</span><span class="p">(</span><span class="nx">args</span><span class="p">[</span><span class="mi">1</span><span class="p">]);</span>
            <span class="p">}</span>

            <span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="k">this</span><span class="p">.</span><span class="nx">focusFirst</span><span class="p">(</span><span class="nx">type</span><span class="p">,</span> <span class="nx">args</span><span class="p">,</span> <span class="nx">obj</span><span class="p">))</span> <span class="p">{</span>
                <span class="k">if</span> <span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">cfg</span><span class="p">.</span><span class="nx">getProperty</span><span class="p">(</span><span class="s2">&quot;modal&quot;</span><span class="p">))</span> <span class="p">{</span>
                    <span class="k">this</span><span class="p">.</span><span class="nx">_focusFirstModal</span><span class="p">();</span>
                <span class="p">}</span>
            <span class="p">}</span>
        <span class="p">},</span>

        <span class="cm">/**</span>
<span class="cm">         * Sets focus to the first element in the Panel.</span>
<span class="cm">         *</span>
<span class="cm">         * @method focusFirst</span>
<span class="cm">         * @return {Boolean} true, if successfully focused, false otherwise </span>
<span class="cm">         */</span>
        <span class="nx">focusFirst</span><span class="o">:</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">type</span><span class="p">,</span> <span class="nx">args</span><span class="p">,</span> <span class="nx">obj</span><span class="p">)</span> <span class="p">{</span>
            <span class="kd">var</span> <span class="nx">el</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">firstElement</span><span class="p">,</span> <span class="nx">focused</span> <span class="o">=</span> <span class="kc">false</span><span class="p">;</span>

            <span class="k">if</span> <span class="p">(</span><span class="nx">args</span> <span class="o">&amp;&amp;</span> <span class="nx">args</span><span class="p">[</span><span class="mi">1</span><span class="p">])</span> <span class="p">{</span>
                <span class="nx">Event</span><span class="p">.</span><span class="nx">stopEvent</span><span class="p">(</span><span class="nx">args</span><span class="p">[</span><span class="mi">1</span><span class="p">]);</span>
            <span class="p">}</span>

            <span class="k">if</span> <span class="p">(</span><span class="nx">el</span><span class="p">)</span> <span class="p">{</span>
                <span class="k">try</span> <span class="p">{</span>
                    <span class="nx">el</span><span class="p">.</span><span class="nx">focus</span><span class="p">();</span>
                    <span class="nx">focused</span> <span class="o">=</span> <span class="kc">true</span><span class="p">;</span>
                <span class="p">}</span> <span class="k">catch</span><span class="p">(</span><span class="nx">err</span><span class="p">)</span> <span class="p">{</span>
                    <span class="c1">// Ignore</span>
                <span class="p">}</span>
            <span class="p">}</span>

            <span class="k">return</span> <span class="nx">focused</span><span class="p">;</span>
        <span class="p">},</span>

        <span class="cm">/**</span>
<span class="cm">         * Sets focus to the last element in the Panel.</span>
<span class="cm">         *</span>
<span class="cm">         * @method focusLast</span>
<span class="cm">         * @return {Boolean} true, if successfully focused, false otherwise</span>
<span class="cm">         */</span>
        <span class="nx">focusLast</span><span class="o">:</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">type</span><span class="p">,</span> <span class="nx">args</span><span class="p">,</span> <span class="nx">obj</span><span class="p">)</span> <span class="p">{</span>
            <span class="kd">var</span> <span class="nx">el</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">lastElement</span><span class="p">,</span> <span class="nx">focused</span> <span class="o">=</span> <span class="kc">false</span><span class="p">;</span>

            <span class="k">if</span> <span class="p">(</span><span class="nx">args</span> <span class="o">&amp;&amp;</span> <span class="nx">args</span><span class="p">[</span><span class="mi">1</span><span class="p">])</span> <span class="p">{</span>
                <span class="nx">Event</span><span class="p">.</span><span class="nx">stopEvent</span><span class="p">(</span><span class="nx">args</span><span class="p">[</span><span class="mi">1</span><span class="p">]);</span>
            <span class="p">}</span>

            <span class="k">if</span> <span class="p">(</span><span class="nx">el</span><span class="p">)</span> <span class="p">{</span>
                <span class="k">try</span> <span class="p">{</span>
                    <span class="nx">el</span><span class="p">.</span><span class="nx">focus</span><span class="p">();</span>
                    <span class="nx">focused</span> <span class="o">=</span> <span class="kc">true</span><span class="p">;</span>
                <span class="p">}</span> <span class="k">catch</span><span class="p">(</span><span class="nx">err</span><span class="p">)</span> <span class="p">{</span>
                    <span class="c1">// Ignore</span>
                <span class="p">}</span>
            <span class="p">}</span>

            <span class="k">return</span> <span class="nx">focused</span><span class="p">;</span>
        <span class="p">},</span>

        <span class="cm">/**</span>
<span class="cm">         * Protected internal method for setTabLoop, which can be used by </span>
<span class="cm">         * subclasses to jump in and modify the arguments passed in if required.</span>
<span class="cm">         *</span>
<span class="cm">         * @method _setTabLoop</span>
<span class="cm">         * @param {HTMLElement} firstElement</span>
<span class="cm">         * @param {HTMLElement} lastElement</span>
<span class="cm">         * @protected</span>
<span class="cm">         *</span>
<span class="cm">         */</span>
        <span class="nx">_setTabLoop</span> <span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">firstElement</span><span class="p">,</span> <span class="nx">lastElement</span><span class="p">)</span> <span class="p">{</span>
            <span class="k">this</span><span class="p">.</span><span class="nx">setTabLoop</span><span class="p">(</span><span class="nx">firstElement</span><span class="p">,</span> <span class="nx">lastElement</span><span class="p">);</span>
        <span class="p">},</span>

        <span class="cm">/**</span>
<span class="cm">         * Sets up a tab, shift-tab loop between the first and last elements</span>
<span class="cm">         * provided. NOTE: Sets up the preventBackTab and preventTabOut KeyListener</span>
<span class="cm">         * instance properties, which are reset everytime this method is invoked.</span>
<span class="cm">         *</span>
<span class="cm">         * @method setTabLoop</span>
<span class="cm">         * @param {HTMLElement} firstElement</span>
<span class="cm">         * @param {HTMLElement} lastElement</span>
<span class="cm">         *</span>
<span class="cm">         */</span>
        <span class="nx">setTabLoop</span> <span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">firstElement</span><span class="p">,</span> <span class="nx">lastElement</span><span class="p">)</span> <span class="p">{</span>

            <span class="kd">var</span> <span class="nx">backTab</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">preventBackTab</span><span class="p">,</span> <span class="nx">tab</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">preventTabOut</span><span class="p">,</span>
                <span class="nx">showEvent</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">showEvent</span><span class="p">,</span> <span class="nx">hideEvent</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">hideEvent</span><span class="p">;</span>

            <span class="k">if</span> <span class="p">(</span><span class="nx">backTab</span><span class="p">)</span> <span class="p">{</span>
                <span class="nx">backTab</span><span class="p">.</span><span class="nx">disable</span><span class="p">();</span>
                <span class="nx">showEvent</span><span class="p">.</span><span class="nx">unsubscribe</span><span class="p">(</span><span class="nx">backTab</span><span class="p">.</span><span class="nx">enable</span><span class="p">,</span> <span class="nx">backTab</span><span class="p">);</span>
                <span class="nx">hideEvent</span><span class="p">.</span><span class="nx">unsubscribe</span><span class="p">(</span><span class="nx">backTab</span><span class="p">.</span><span class="nx">disable</span><span class="p">,</span> <span class="nx">backTab</span><span class="p">);</span>
                <span class="nx">backTab</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">preventBackTab</span> <span class="o">=</span> <span class="kc">null</span><span class="p">;</span>
            <span class="p">}</span>

            <span class="k">if</span> <span class="p">(</span><span class="nx">tab</span><span class="p">)</span> <span class="p">{</span>
                <span class="nx">tab</span><span class="p">.</span><span class="nx">disable</span><span class="p">();</span>
                <span class="nx">showEvent</span><span class="p">.</span><span class="nx">unsubscribe</span><span class="p">(</span><span class="nx">tab</span><span class="p">.</span><span class="nx">enable</span><span class="p">,</span> <span class="nx">tab</span><span class="p">);</span>
                <span class="nx">hideEvent</span><span class="p">.</span><span class="nx">unsubscribe</span><span class="p">(</span><span class="nx">tab</span><span class="p">.</span><span class="nx">disable</span><span class="p">,</span><span class="nx">tab</span><span class="p">);</span>
                <span class="nx">tab</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">preventTabOut</span> <span class="o">=</span> <span class="kc">null</span><span class="p">;</span>
            <span class="p">}</span>

            <span class="k">if</span> <span class="p">(</span><span class="nx">firstElement</span><span class="p">)</span> <span class="p">{</span>
                <span class="k">this</span><span class="p">.</span><span class="nx">preventBackTab</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">KeyListener</span><span class="p">(</span><span class="nx">firstElement</span><span class="p">,</span> 
                    <span class="p">{</span><span class="nx">shift</span><span class="o">:</span><span class="kc">true</span><span class="p">,</span> <span class="nx">keys</span><span class="o">:</span><span class="mi">9</span><span class="p">},</span>
                    <span class="p">{</span><span class="nx">fn</span><span class="o">:</span><span class="k">this</span><span class="p">.</span><span class="nx">focusLast</span><span class="p">,</span> <span class="nx">scope</span><span class="o">:</span><span class="k">this</span><span class="p">,</span> <span class="nx">correctScope</span><span class="o">:</span><span class="kc">true</span><span class="p">}</span>
                <span class="p">);</span>
                <span class="nx">backTab</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">preventBackTab</span><span class="p">;</span>

                <span class="nx">showEvent</span><span class="p">.</span><span class="nx">subscribe</span><span class="p">(</span><span class="nx">backTab</span><span class="p">.</span><span class="nx">enable</span><span class="p">,</span> <span class="nx">backTab</span><span class="p">,</span> <span class="kc">true</span><span class="p">);</span>
                <span class="nx">hideEvent</span><span class="p">.</span><span class="nx">subscribe</span><span class="p">(</span><span class="nx">backTab</span><span class="p">.</span><span class="nx">disable</span><span class="p">,</span><span class="nx">backTab</span><span class="p">,</span> <span class="kc">true</span><span class="p">);</span>
            <span class="p">}</span>

            <span class="k">if</span> <span class="p">(</span><span class="nx">lastElement</span><span class="p">)</span> <span class="p">{</span>
                <span class="k">this</span><span class="p">.</span><span class="nx">preventTabOut</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">KeyListener</span><span class="p">(</span><span class="nx">lastElement</span><span class="p">,</span> 
                    <span class="p">{</span><span class="nx">shift</span><span class="o">:</span><span class="kc">false</span><span class="p">,</span> <span class="nx">keys</span><span class="o">:</span><span class="mi">9</span><span class="p">},</span> 
                    <span class="p">{</span><span class="nx">fn</span><span class="o">:</span><span class="k">this</span><span class="p">.</span><span class="nx">focusFirst</span><span class="p">,</span> <span class="nx">scope</span><span class="o">:</span><span class="k">this</span><span class="p">,</span> <span class="nx">correctScope</span><span class="o">:</span><span class="kc">true</span><span class="p">}</span>
                <span class="p">);</span>
                <span class="nx">tab</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">preventTabOut</span><span class="p">;</span>

                <span class="nx">showEvent</span><span class="p">.</span><span class="nx">subscribe</span><span class="p">(</span><span class="nx">tab</span><span class="p">.</span><span class="nx">enable</span><span class="p">,</span> <span class="nx">tab</span><span class="p">,</span> <span class="kc">true</span><span class="p">);</span>
                <span class="nx">hideEvent</span><span class="p">.</span><span class="nx">subscribe</span><span class="p">(</span><span class="nx">tab</span><span class="p">.</span><span class="nx">disable</span><span class="p">,</span><span class="nx">tab</span><span class="p">,</span> <span class="kc">true</span><span class="p">);</span>
            <span class="p">}</span>
        <span class="p">},</span>

        <span class="cm">/**</span>
<span class="cm">         * Returns an array of the currently focusable items which reside within</span>
<span class="cm">         * Panel. The set of focusable elements the method looks for are defined</span>
<span class="cm">         * in the Panel.FOCUSABLE static property</span>
<span class="cm">         *</span>
<span class="cm">         * @method getFocusableElements</span>
<span class="cm">         * @param {HTMLElement} root element to start from.</span>
<span class="cm">         */</span>
        <span class="nx">getFocusableElements</span> <span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">root</span><span class="p">)</span> <span class="p">{</span>

            <span class="nx">root</span> <span class="o">=</span> <span class="nx">root</span> <span class="o">||</span> <span class="k">this</span><span class="p">.</span><span class="nx">innerElement</span><span class="p">;</span>

            <span class="kd">var</span> <span class="nx">focusable</span> <span class="o">=</span> <span class="p">{},</span> <span class="nx">panel</span> <span class="o">=</span> <span class="k">this</span><span class="p">;</span>
            <span class="k">for</span> <span class="p">(</span><span class="kd">var</span> <span class="nx">i</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> <span class="nx">i</span> <span class="o">&lt;</span> <span class="nx">Panel</span><span class="p">.</span><span class="nx">FOCUSABLE</span><span class="p">.</span><span class="nx">length</span><span class="p">;</span> <span class="nx">i</span><span class="o">++</span><span class="p">)</span> <span class="p">{</span>
                <span class="nx">focusable</span><span class="p">[</span><span class="nx">Panel</span><span class="p">.</span><span class="nx">FOCUSABLE</span><span class="p">[</span><span class="nx">i</span><span class="p">]]</span> <span class="o">=</span> <span class="kc">true</span><span class="p">;</span>
            <span class="p">}</span>

            <span class="c1">// Not looking by Tag, since we want elements in DOM order</span>
            
            <span class="k">return</span> <span class="nx">Dom</span><span class="p">.</span><span class="nx">getElementsBy</span><span class="p">(</span><span class="kd">function</span><span class="p">(</span><span class="nx">el</span><span class="p">)</span> <span class="p">{</span> <span class="k">return</span> <span class="nx">panel</span><span class="p">.</span><span class="nx">_testIfFocusable</span><span class="p">(</span><span class="nx">el</span><span class="p">,</span> <span class="nx">focusable</span><span class="p">);</span> <span class="p">},</span> <span class="kc">null</span><span class="p">,</span> <span class="nx">root</span><span class="p">);</span>
        <span class="p">},</span>

        <span class="cm">/**</span>
<span class="cm">         * This is the test method used by getFocusableElements, to determine which elements to </span>
<span class="cm">         * include in the focusable elements list. Users may override this to customize behavior.</span>
<span class="cm">         *</span>
<span class="cm">         * @method _testIfFocusable</span>
<span class="cm">         * @param {Object} el The element being tested</span>
<span class="cm">         * @param {Object} focusable The hash of known focusable elements, created by an array-to-map operation on Panel.FOCUSABLE</span>
<span class="cm">         * @protected</span>
<span class="cm">         */</span>
        <span class="nx">_testIfFocusable</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">el</span><span class="p">,</span> <span class="nx">focusable</span><span class="p">)</span> <span class="p">{</span>
            <span class="k">if</span> <span class="p">(</span><span class="nx">el</span><span class="p">.</span><span class="nx">focus</span> <span class="o">&amp;&amp;</span> <span class="nx">el</span><span class="p">.</span><span class="nx">type</span> <span class="o">!==</span> <span class="s2">&quot;hidden&quot;</span> <span class="o">&amp;&amp;</span> <span class="o">!</span><span class="nx">el</span><span class="p">.</span><span class="nx">disabled</span> <span class="o">&amp;&amp;</span> <span class="nx">focusable</span><span class="p">[</span><span class="nx">el</span><span class="p">.</span><span class="nx">tagName</span><span class="p">.</span><span class="nx">toLowerCase</span><span class="p">()])</span> <span class="p">{</span>
                <span class="k">return</span> <span class="kc">true</span><span class="p">;</span>
            <span class="p">}</span>
            <span class="k">return</span> <span class="kc">false</span><span class="p">;</span>
        <span class="p">},</span>

        <span class="cm">/**</span>
<span class="cm">         * Sets the firstElement and lastElement instance properties</span>
<span class="cm">         * to the first and last focusable elements in the Panel.</span>
<span class="cm">         *</span>
<span class="cm">         * @method setFirstLastFocusable</span>
<span class="cm">         */</span>
        <span class="nx">setFirstLastFocusable</span> <span class="o">:</span> <span class="kd">function</span><span class="p">()</span> <span class="p">{</span>

            <span class="k">this</span><span class="p">.</span><span class="nx">firstElement</span> <span class="o">=</span> <span class="kc">null</span><span class="p">;</span>
            <span class="k">this</span><span class="p">.</span><span class="nx">lastElement</span> <span class="o">=</span> <span class="kc">null</span><span class="p">;</span>

            <span class="kd">var</span> <span class="nx">elements</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">getFocusableElements</span><span class="p">();</span>
            <span class="k">this</span><span class="p">.</span><span class="nx">focusableElements</span> <span class="o">=</span> <span class="nx">elements</span><span class="p">;</span>

            <span class="k">if</span> <span class="p">(</span><span class="nx">elements</span><span class="p">.</span><span class="nx">length</span> <span class="o">&gt;</span> <span class="mi">0</span><span class="p">)</span> <span class="p">{</span>
                <span class="k">this</span><span class="p">.</span><span class="nx">firstElement</span> <span class="o">=</span> <span class="nx">elements</span><span class="p">[</span><span class="mi">0</span><span class="p">];</span>
                <span class="k">this</span><span class="p">.</span><span class="nx">lastElement</span> <span class="o">=</span> <span class="nx">elements</span><span class="p">[</span><span class="nx">elements</span><span class="p">.</span><span class="nx">length</span> <span class="o">-</span> <span class="mi">1</span><span class="p">];</span>
            <span class="p">}</span>

            <span class="k">if</span> <span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">cfg</span><span class="p">.</span><span class="nx">getProperty</span><span class="p">(</span><span class="s2">&quot;modal&quot;</span><span class="p">))</span> <span class="p">{</span>
                <span class="k">this</span><span class="p">.</span><span class="nx">_setTabLoop</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">firstElement</span><span class="p">,</span> <span class="k">this</span><span class="p">.</span><span class="nx">lastElement</span><span class="p">);</span>
            <span class="p">}</span>
        <span class="p">},</span>

        <span class="cm">/**</span>
<span class="cm">         * Initializes the custom events for Module which are fired </span>
<span class="cm">         * automatically at appropriate times by the Module class.</span>
<span class="cm">         */</span>
        <span class="nx">initEvents</span><span class="o">:</span> <span class="kd">function</span> <span class="p">()</span> <span class="p">{</span>
            <span class="nx">Panel</span><span class="p">.</span><span class="nx">superclass</span><span class="p">.</span><span class="nx">initEvents</span><span class="p">.</span><span class="nx">call</span><span class="p">(</span><span class="k">this</span><span class="p">);</span>

            <span class="kd">var</span> <span class="nx">SIGNATURE</span> <span class="o">=</span> <span class="nx">CustomEvent</span><span class="p">.</span><span class="nx">LIST</span><span class="p">;</span>

            <span class="cm">/**</span>
<span class="cm">            * CustomEvent fired after the modality mask is shown</span>
<span class="cm">            * @event showMaskEvent</span>
<span class="cm">            */</span>
            <span class="k">this</span><span class="p">.</span><span class="nx">showMaskEvent</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">createEvent</span><span class="p">(</span><span class="nx">EVENT_TYPES</span><span class="p">.</span><span class="nx">SHOW_MASK</span><span class="p">);</span>
            <span class="k">this</span><span class="p">.</span><span class="nx">showMaskEvent</span><span class="p">.</span><span class="nx">signature</span> <span class="o">=</span> <span class="nx">SIGNATURE</span><span class="p">;</span>

            <span class="cm">/**</span>
<span class="cm">            * CustomEvent fired before the modality mask is shown. Subscribers can return false to prevent the</span>
<span class="cm">            * mask from being shown</span>
<span class="cm">            * @event beforeShowMaskEvent</span>
<span class="cm">            */</span>
            <span class="k">this</span><span class="p">.</span><span class="nx">beforeShowMaskEvent</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">createEvent</span><span class="p">(</span><span class="nx">EVENT_TYPES</span><span class="p">.</span><span class="nx">BEFORE_SHOW_MASK</span><span class="p">);</span>
            <span class="k">this</span><span class="p">.</span><span class="nx">beforeShowMaskEvent</span><span class="p">.</span><span class="nx">signature</span> <span class="o">=</span> <span class="nx">SIGNATURE</span><span class="p">;</span>

            <span class="cm">/**</span>
<span class="cm">            * CustomEvent fired after the modality mask is hidden</span>
<span class="cm">            * @event hideMaskEvent</span>
<span class="cm">            */</span>
            <span class="k">this</span><span class="p">.</span><span class="nx">hideMaskEvent</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">createEvent</span><span class="p">(</span><span class="nx">EVENT_TYPES</span><span class="p">.</span><span class="nx">HIDE_MASK</span><span class="p">);</span>
            <span class="k">this</span><span class="p">.</span><span class="nx">hideMaskEvent</span><span class="p">.</span><span class="nx">signature</span> <span class="o">=</span> <span class="nx">SIGNATURE</span><span class="p">;</span>

            <span class="cm">/**</span>
<span class="cm">            * CustomEvent fired before the modality mask is hidden. Subscribers can return false to prevent the</span>
<span class="cm">            * mask from being hidden</span>
<span class="cm">            * @event beforeHideMaskEvent</span>
<span class="cm">            */</span>
            <span class="k">this</span><span class="p">.</span><span class="nx">beforeHideMaskEvent</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">createEvent</span><span class="p">(</span><span class="nx">EVENT_TYPES</span><span class="p">.</span><span class="nx">BEFORE_HIDE_MASK</span><span class="p">);</span>
            <span class="k">this</span><span class="p">.</span><span class="nx">beforeHideMaskEvent</span><span class="p">.</span><span class="nx">signature</span> <span class="o">=</span> <span class="nx">SIGNATURE</span><span class="p">;</span>

            <span class="cm">/**</span>
<span class="cm">            * CustomEvent when the Panel is dragged</span>
<span class="cm">            * @event dragEvent</span>
<span class="cm">            */</span>
            <span class="k">this</span><span class="p">.</span><span class="nx">dragEvent</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">createEvent</span><span class="p">(</span><span class="nx">EVENT_TYPES</span><span class="p">.</span><span class="nx">DRAG</span><span class="p">);</span>
            <span class="k">this</span><span class="p">.</span><span class="nx">dragEvent</span><span class="p">.</span><span class="nx">signature</span> <span class="o">=</span> <span class="nx">SIGNATURE</span><span class="p">;</span>
        <span class="p">},</span>

        <span class="cm">/**</span>
<span class="cm">         * Initializes the class&#39;s configurable properties which can be changed </span>
<span class="cm">         * using the Panel&#39;s Config object (cfg).</span>
<span class="cm">         * @method initDefaultConfig</span>
<span class="cm">         */</span>
        <span class="nx">initDefaultConfig</span><span class="o">:</span> <span class="kd">function</span> <span class="p">()</span> <span class="p">{</span>
            <span class="nx">Panel</span><span class="p">.</span><span class="nx">superclass</span><span class="p">.</span><span class="nx">initDefaultConfig</span><span class="p">.</span><span class="nx">call</span><span class="p">(</span><span class="k">this</span><span class="p">);</span>

            <span class="c1">// Add panel config properties //</span>

            <span class="cm">/**</span>
<span class="cm">            * True if the Panel should display a &quot;close&quot; button</span>
<span class="cm">            * @config close</span>
<span class="cm">            * @type Boolean</span>
<span class="cm">            * @default true</span>
<span class="cm">            */</span>
            <span class="k">this</span><span class="p">.</span><span class="nx">cfg</span><span class="p">.</span><span class="nx">addProperty</span><span class="p">(</span><span class="nx">DEFAULT_CONFIG</span><span class="p">.</span><span class="nx">CLOSE</span><span class="p">.</span><span class="nx">key</span><span class="p">,</span> <span class="p">{</span> 
                <span class="nx">handler</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">configClose</span><span class="p">,</span> 
                <span class="nx">value</span><span class="o">:</span> <span class="nx">DEFAULT_CONFIG</span><span class="p">.</span><span class="nx">CLOSE</span><span class="p">.</span><span class="nx">value</span><span class="p">,</span> 
                <span class="nx">validator</span><span class="o">:</span> <span class="nx">DEFAULT_CONFIG</span><span class="p">.</span><span class="nx">CLOSE</span><span class="p">.</span><span class="nx">validator</span><span class="p">,</span> 
                <span class="nx">supercedes</span><span class="o">:</span> <span class="nx">DEFAULT_CONFIG</span><span class="p">.</span><span class="nx">CLOSE</span><span class="p">.</span><span class="nx">supercedes</span> 
            <span class="p">});</span>

            <span class="cm">/**</span>
<span class="cm">            * Boolean specifying if the Panel should be draggable.  The default </span>
<span class="cm">            * value is &quot;true&quot; if the Drag and Drop utility is included, </span>
<span class="cm">            * otherwise it is &quot;false.&quot; &lt;strong&gt;PLEASE NOTE:&lt;/strong&gt; There is a </span>
<span class="cm">            * known issue in IE 6 (Strict Mode and Quirks Mode) and IE 7 </span>
<span class="cm">            * (Quirks Mode) where Panels that either don&#39;t have a value set for </span>
<span class="cm">            * their &quot;width&quot; configuration property, or their &quot;width&quot; </span>
<span class="cm">            * configuration property is set to &quot;auto&quot; will only be draggable by</span>
<span class="cm">            * placing the mouse on the text of the Panel&#39;s header element.</span>
<span class="cm">            * To fix this bug, draggable Panels missing a value for their </span>
<span class="cm">            * &quot;width&quot; configuration property, or whose &quot;width&quot; configuration </span>
<span class="cm">            * property is set to &quot;auto&quot; will have it set to the value of </span>
<span class="cm">            * their root HTML element&#39;s offsetWidth before they are made </span>
<span class="cm">            * visible.  The calculated width is then removed when the Panel is   </span>
<span class="cm">            * hidden. &lt;em&gt;This fix is only applied to draggable Panels in IE 6 </span>
<span class="cm">            * (Strict Mode and Quirks Mode) and IE 7 (Quirks Mode)&lt;/em&gt;. For </span>
<span class="cm">            * more information on this issue see:</span>
<span class="cm">            * YUILibrary bugs #1726972 and #1589210.</span>
<span class="cm">            * @config draggable</span>
<span class="cm">            * @type Boolean</span>
<span class="cm">            * @default true</span>
<span class="cm">            */</span>
            <span class="k">this</span><span class="p">.</span><span class="nx">cfg</span><span class="p">.</span><span class="nx">addProperty</span><span class="p">(</span><span class="nx">DEFAULT_CONFIG</span><span class="p">.</span><span class="nx">DRAGGABLE</span><span class="p">.</span><span class="nx">key</span><span class="p">,</span> <span class="p">{</span>
                <span class="nx">handler</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">configDraggable</span><span class="p">,</span>
                <span class="nx">value</span><span class="o">:</span> <span class="p">(</span><span class="nx">Util</span><span class="p">.</span><span class="nx">DD</span><span class="p">)</span> <span class="o">?</span> <span class="kc">true</span> <span class="o">:</span> <span class="kc">false</span><span class="p">,</span>
                <span class="nx">validator</span><span class="o">:</span> <span class="nx">DEFAULT_CONFIG</span><span class="p">.</span><span class="nx">DRAGGABLE</span><span class="p">.</span><span class="nx">validator</span><span class="p">,</span>
                <span class="nx">supercedes</span><span class="o">:</span> <span class="nx">DEFAULT_CONFIG</span><span class="p">.</span><span class="nx">DRAGGABLE</span><span class="p">.</span><span class="nx">supercedes</span>
            <span class="p">});</span>

            <span class="cm">/**</span>
<span class="cm">            * Boolean specifying if the draggable Panel should be drag only, not interacting with drop </span>
<span class="cm">            * targets on the page.</span>
<span class="cm">            * &lt;p&gt;</span>
<span class="cm">            * When set to true, draggable Panels will not check to see if they are over drop targets,</span>
<span class="cm">            * or fire the DragDrop events required to support drop target interaction (onDragEnter, </span>
<span class="cm">            * onDragOver, onDragOut, onDragDrop etc.).</span>
<span class="cm">            * If the Panel is not designed to be dropped on any target elements on the page, then this </span>
<span class="cm">            * flag can be set to true to improve performance.</span>
<span class="cm">            * &lt;/p&gt;</span>
<span class="cm">            * &lt;p&gt;</span>
<span class="cm">            * When set to false, all drop target related events will be fired.</span>
<span class="cm">            * &lt;/p&gt;</span>
<span class="cm">            * &lt;p&gt;</span>
<span class="cm">            * The property is set to false by default to maintain backwards compatibility but should be </span>
<span class="cm">            * set to true if drop target interaction is not required for the Panel, to improve performance.&lt;/p&gt;</span>
<span class="cm">            * </span>
<span class="cm">            * @config dragOnly</span>
<span class="cm">            * @type Boolean</span>
<span class="cm">            * @default false</span>
<span class="cm">            */</span>
            <span class="k">this</span><span class="p">.</span><span class="nx">cfg</span><span class="p">.</span><span class="nx">addProperty</span><span class="p">(</span><span class="nx">DEFAULT_CONFIG</span><span class="p">.</span><span class="nx">DRAG_ONLY</span><span class="p">.</span><span class="nx">key</span><span class="p">,</span> <span class="p">{</span> 
                <span class="nx">value</span><span class="o">:</span> <span class="nx">DEFAULT_CONFIG</span><span class="p">.</span><span class="nx">DRAG_ONLY</span><span class="p">.</span><span class="nx">value</span><span class="p">,</span> 
                <span class="nx">validator</span><span class="o">:</span> <span class="nx">DEFAULT_CONFIG</span><span class="p">.</span><span class="nx">DRAG_ONLY</span><span class="p">.</span><span class="nx">validator</span><span class="p">,</span> 
                <span class="nx">supercedes</span><span class="o">:</span> <span class="nx">DEFAULT_CONFIG</span><span class="p">.</span><span class="nx">DRAG_ONLY</span><span class="p">.</span><span class="nx">supercedes</span> 
            <span class="p">});</span>

            <span class="cm">/**</span>
<span class="cm">            * Sets the type of underlay to display for the Panel. Valid values </span>
<span class="cm">            * are &quot;shadow,&quot; &quot;matte,&quot; and &quot;none&quot;.  &lt;strong&gt;PLEASE NOTE:&lt;/strong&gt; </span>
<span class="cm">            * The creation of the underlay element is deferred until the Panel </span>
<span class="cm">            * is initially made visible.  For Gecko-based browsers on Mac</span>
<span class="cm">            * OS X the underlay elment is always created as it is used as a </span>
<span class="cm">            * shim to prevent Aqua scrollbars below a Panel instance from poking </span>
<span class="cm">            * through it (See YUILibrary bug #1723530).</span>
<span class="cm">            * @config underlay</span>
<span class="cm">            * @type String</span>
<span class="cm">            * @default shadow</span>
<span class="cm">            */</span>
            <span class="k">this</span><span class="p">.</span><span class="nx">cfg</span><span class="p">.</span><span class="nx">addProperty</span><span class="p">(</span><span class="nx">DEFAULT_CONFIG</span><span class="p">.</span><span class="nx">UNDERLAY</span><span class="p">.</span><span class="nx">key</span><span class="p">,</span> <span class="p">{</span> 
                <span class="nx">handler</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">configUnderlay</span><span class="p">,</span> 
                <span class="nx">value</span><span class="o">:</span> <span class="nx">DEFAULT_CONFIG</span><span class="p">.</span><span class="nx">UNDERLAY</span><span class="p">.</span><span class="nx">value</span><span class="p">,</span> 
                <span class="nx">supercedes</span><span class="o">:</span> <span class="nx">DEFAULT_CONFIG</span><span class="p">.</span><span class="nx">UNDERLAY</span><span class="p">.</span><span class="nx">supercedes</span> 
            <span class="p">});</span>
        
            <span class="cm">/**</span>
<span class="cm">            * True if the Panel should be displayed in a modal fashion, </span>
<span class="cm">            * automatically creating a transparent mask over the document that</span>
<span class="cm">            * will not be removed until the Panel is dismissed.</span>
<span class="cm">            * @config modal</span>
<span class="cm">            * @type Boolean</span>
<span class="cm">            * @default false</span>
<span class="cm">            */</span>
            <span class="k">this</span><span class="p">.</span><span class="nx">cfg</span><span class="p">.</span><span class="nx">addProperty</span><span class="p">(</span><span class="nx">DEFAULT_CONFIG</span><span class="p">.</span><span class="nx">MODAL</span><span class="p">.</span><span class="nx">key</span><span class="p">,</span> <span class="p">{</span> 
                <span class="nx">handler</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">configModal</span><span class="p">,</span> 
                <span class="nx">value</span><span class="o">:</span> <span class="nx">DEFAULT_CONFIG</span><span class="p">.</span><span class="nx">MODAL</span><span class="p">.</span><span class="nx">value</span><span class="p">,</span>
                <span class="nx">validator</span><span class="o">:</span> <span class="nx">DEFAULT_CONFIG</span><span class="p">.</span><span class="nx">MODAL</span><span class="p">.</span><span class="nx">validator</span><span class="p">,</span> 
                <span class="nx">supercedes</span><span class="o">:</span> <span class="nx">DEFAULT_CONFIG</span><span class="p">.</span><span class="nx">MODAL</span><span class="p">.</span><span class="nx">supercedes</span> 
            <span class="p">});</span>

            <span class="cm">/**</span>
<span class="cm">            * A KeyListener (or array of KeyListeners) that will be enabled </span>
<span class="cm">            * when the Panel is shown, and disabled when the Panel is hidden.</span>
<span class="cm">            * @config keylisteners</span>
<span class="cm">            * @type YAHOO.util.KeyListener[]</span>
<span class="cm">            * @default null</span>
<span class="cm">            */</span>
            <span class="k">this</span><span class="p">.</span><span class="nx">cfg</span><span class="p">.</span><span class="nx">addProperty</span><span class="p">(</span><span class="nx">DEFAULT_CONFIG</span><span class="p">.</span><span class="nx">KEY_LISTENERS</span><span class="p">.</span><span class="nx">key</span><span class="p">,</span> <span class="p">{</span> 
                <span class="nx">handler</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">configKeyListeners</span><span class="p">,</span> 
                <span class="nx">suppressEvent</span><span class="o">:</span> <span class="nx">DEFAULT_CONFIG</span><span class="p">.</span><span class="nx">KEY_LISTENERS</span><span class="p">.</span><span class="nx">suppressEvent</span><span class="p">,</span> 
                <span class="nx">supercedes</span><span class="o">:</span> <span class="nx">DEFAULT_CONFIG</span><span class="p">.</span><span class="nx">KEY_LISTENERS</span><span class="p">.</span><span class="nx">supercedes</span> 
            <span class="p">});</span>

            <span class="cm">/**</span>
<span class="cm">            * UI Strings used by the Panel. The strings are inserted into the DOM as HTML, and should be escaped by the implementor if coming from an external source.</span>
<span class="cm">            * </span>
<span class="cm">            * @config strings</span>
<span class="cm">            * @type Object</span>
<span class="cm">            * @default An object literal with the properties shown below:</span>
<span class="cm">            *     &lt;dl&gt;</span>
<span class="cm">            *         &lt;dt&gt;close&lt;/dt&gt;&lt;dd&gt;&lt;em&gt;HTML&lt;/em&gt; : The markup to use as the label for the close icon. Defaults to &quot;Close&quot;.&lt;/dd&gt;</span>
<span class="cm">            *     &lt;/dl&gt;</span>
<span class="cm">            */</span>
            <span class="k">this</span><span class="p">.</span><span class="nx">cfg</span><span class="p">.</span><span class="nx">addProperty</span><span class="p">(</span><span class="nx">DEFAULT_CONFIG</span><span class="p">.</span><span class="nx">STRINGS</span><span class="p">.</span><span class="nx">key</span><span class="p">,</span> <span class="p">{</span> 
                <span class="nx">value</span><span class="o">:</span><span class="nx">DEFAULT_CONFIG</span><span class="p">.</span><span class="nx">STRINGS</span><span class="p">.</span><span class="nx">value</span><span class="p">,</span>
                <span class="nx">handler</span><span class="o">:</span><span class="k">this</span><span class="p">.</span><span class="nx">configStrings</span><span class="p">,</span>
                <span class="nx">validator</span><span class="o">:</span><span class="nx">DEFAULT_CONFIG</span><span class="p">.</span><span class="nx">STRINGS</span><span class="p">.</span><span class="nx">validator</span><span class="p">,</span>
                <span class="nx">supercedes</span><span class="o">:</span><span class="nx">DEFAULT_CONFIG</span><span class="p">.</span><span class="nx">STRINGS</span><span class="p">.</span><span class="nx">supercedes</span>
            <span class="p">});</span>
        <span class="p">},</span>

        <span class="c1">// BEGIN BUILT-IN PROPERTY EVENT HANDLERS //</span>
        
        <span class="cm">/**</span>
<span class="cm">        * The default event handler fired when the &quot;close&quot; property is changed.</span>
<span class="cm">        * The method controls the appending or hiding of the close icon at the </span>
<span class="cm">        * top right of the Panel.</span>
<span class="cm">        * @method configClose</span>
<span class="cm">        * @param {String} type The CustomEvent type (usually the property name)</span>
<span class="cm">        * @param {Object[]} args The CustomEvent arguments. For configuration </span>
<span class="cm">        * handlers, args[0] will equal the newly applied value for the property.</span>
<span class="cm">        * @param {Object} obj The scope object. For configuration handlers, </span>
<span class="cm">        * this will usually equal the owner.</span>
<span class="cm">        */</span>
        <span class="nx">configClose</span><span class="o">:</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">type</span><span class="p">,</span> <span class="nx">args</span><span class="p">,</span> <span class="nx">obj</span><span class="p">)</span> <span class="p">{</span>

            <span class="kd">var</span> <span class="nx">val</span> <span class="o">=</span> <span class="nx">args</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span>
                <span class="nx">oClose</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">close</span><span class="p">,</span>
                <span class="nx">strings</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">cfg</span><span class="p">.</span><span class="nx">getProperty</span><span class="p">(</span><span class="s2">&quot;strings&quot;</span><span class="p">),</span>
                <span class="nx">fc</span><span class="p">;</span>

            <span class="k">if</span> <span class="p">(</span><span class="nx">val</span><span class="p">)</span> <span class="p">{</span>
                <span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">oClose</span><span class="p">)</span> <span class="p">{</span>

                    <span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">m_oCloseIconTemplate</span><span class="p">)</span> <span class="p">{</span>
                        <span class="nx">m_oCloseIconTemplate</span> <span class="o">=</span> <span class="nb">document</span><span class="p">.</span><span class="nx">createElement</span><span class="p">(</span><span class="s2">&quot;a&quot;</span><span class="p">);</span>
                        <span class="nx">m_oCloseIconTemplate</span><span class="p">.</span><span class="nx">className</span> <span class="o">=</span> <span class="s2">&quot;container-close&quot;</span><span class="p">;</span>
                        <span class="nx">m_oCloseIconTemplate</span><span class="p">.</span><span class="nx">href</span> <span class="o">=</span> <span class="s2">&quot;#&quot;</span><span class="p">;</span>
                    <span class="p">}</span>

                    <span class="nx">oClose</span> <span class="o">=</span> <span class="nx">m_oCloseIconTemplate</span><span class="p">.</span><span class="nx">cloneNode</span><span class="p">(</span><span class="kc">true</span><span class="p">);</span>

                    <span class="nx">fc</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">innerElement</span><span class="p">.</span><span class="nx">firstChild</span><span class="p">;</span>

                    <span class="k">if</span> <span class="p">(</span><span class="nx">fc</span><span class="p">)</span> <span class="p">{</span>
                        <span class="k">this</span><span class="p">.</span><span class="nx">innerElement</span><span class="p">.</span><span class="nx">insertBefore</span><span class="p">(</span><span class="nx">oClose</span><span class="p">,</span> <span class="nx">fc</span><span class="p">);</span>
                    <span class="p">}</span> <span class="k">else</span> <span class="p">{</span>
                        <span class="k">this</span><span class="p">.</span><span class="nx">innerElement</span><span class="p">.</span><span class="nx">appendChild</span><span class="p">(</span><span class="nx">oClose</span><span class="p">);</span>
                    <span class="p">}</span>

                    <span class="nx">oClose</span><span class="p">.</span><span class="nx">innerHTML</span> <span class="o">=</span> <span class="p">(</span><span class="nx">strings</span> <span class="o">&amp;&amp;</span> <span class="nx">strings</span><span class="p">.</span><span class="nx">close</span><span class="p">)</span> <span class="o">?</span> <span class="nx">strings</span><span class="p">.</span><span class="nx">close</span> <span class="o">:</span> <span class="s2">&quot;&amp;#160;&quot;</span><span class="p">;</span>

                    <span class="nx">Event</span><span class="p">.</span><span class="nx">on</span><span class="p">(</span><span class="nx">oClose</span><span class="p">,</span> <span class="s2">&quot;click&quot;</span><span class="p">,</span> <span class="k">this</span><span class="p">.</span><span class="nx">_doClose</span><span class="p">,</span> <span class="k">this</span><span class="p">,</span> <span class="kc">true</span><span class="p">);</span>

                    <span class="k">this</span><span class="p">.</span><span class="nx">close</span> <span class="o">=</span> <span class="nx">oClose</span><span class="p">;</span>

                <span class="p">}</span> <span class="k">else</span> <span class="p">{</span>
                    <span class="nx">oClose</span><span class="p">.</span><span class="nx">style</span><span class="p">.</span><span class="nx">display</span> <span class="o">=</span> <span class="s2">&quot;block&quot;</span><span class="p">;</span>
                <span class="p">}</span>

            <span class="p">}</span> <span class="k">else</span> <span class="p">{</span>
                <span class="k">if</span> <span class="p">(</span><span class="nx">oClose</span><span class="p">)</span> <span class="p">{</span>
                    <span class="nx">oClose</span><span class="p">.</span><span class="nx">style</span><span class="p">.</span><span class="nx">display</span> <span class="o">=</span> <span class="s2">&quot;none&quot;</span><span class="p">;</span>
                <span class="p">}</span>
            <span class="p">}</span>

        <span class="p">},</span>

        <span class="cm">/**</span>
<span class="cm">         * Event handler for the close icon</span>
<span class="cm">         * </span>
<span class="cm">         * @method _doClose</span>
<span class="cm">         * @protected</span>
<span class="cm">         * </span>
<span class="cm">         * @param {DOMEvent} e</span>
<span class="cm">         */</span>
        <span class="nx">_doClose</span> <span class="o">:</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">e</span><span class="p">)</span> <span class="p">{</span>
            <span class="nx">Event</span><span class="p">.</span><span class="nx">preventDefault</span><span class="p">(</span><span class="nx">e</span><span class="p">);</span>
            <span class="k">this</span><span class="p">.</span><span class="nx">hide</span><span class="p">();</span>
        <span class="p">},</span>

        <span class="cm">/**</span>
<span class="cm">        * The default event handler fired when the &quot;draggable&quot; property </span>
<span class="cm">        * is changed.</span>
<span class="cm">        * @method configDraggable</span>
<span class="cm">        * @param {String} type The CustomEvent type (usually the property name)</span>
<span class="cm">        * @param {Object[]} args The CustomEvent arguments. For configuration </span>
<span class="cm">        * handlers, args[0] will equal the newly applied value for the property.</span>
<span class="cm">        * @param {Object} obj The scope object. For configuration handlers, </span>
<span class="cm">        * this will usually equal the owner.</span>
<span class="cm">        */</span>
        <span class="nx">configDraggable</span><span class="o">:</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">type</span><span class="p">,</span> <span class="nx">args</span><span class="p">,</span> <span class="nx">obj</span><span class="p">)</span> <span class="p">{</span>
            <span class="kd">var</span> <span class="nx">val</span> <span class="o">=</span> <span class="nx">args</span><span class="p">[</span><span class="mi">0</span><span class="p">];</span>

            <span class="k">if</span> <span class="p">(</span><span class="nx">val</span><span class="p">)</span> <span class="p">{</span>
                <span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">Util</span><span class="p">.</span><span class="nx">DD</span><span class="p">)</span> <span class="p">{</span>
                    <span class="nx">YAHOO</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="s2">&quot;DD dependency not met.&quot;</span><span class="p">,</span> <span class="s2">&quot;error&quot;</span><span class="p">);</span>
                    <span class="k">this</span><span class="p">.</span><span class="nx">cfg</span><span class="p">.</span><span class="nx">setProperty</span><span class="p">(</span><span class="s2">&quot;draggable&quot;</span><span class="p">,</span> <span class="kc">false</span><span class="p">);</span>
                    <span class="k">return</span><span class="p">;</span>
                <span class="p">}</span>

                <span class="k">if</span> <span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">header</span><span class="p">)</span> <span class="p">{</span>
                    <span class="nx">Dom</span><span class="p">.</span><span class="nx">setStyle</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">header</span><span class="p">,</span> <span class="s2">&quot;cursor&quot;</span><span class="p">,</span> <span class="s2">&quot;move&quot;</span><span class="p">);</span>
                    <span class="k">this</span><span class="p">.</span><span class="nx">registerDragDrop</span><span class="p">();</span>
                <span class="p">}</span>

                <span class="k">this</span><span class="p">.</span><span class="nx">subscribe</span><span class="p">(</span><span class="s2">&quot;beforeShow&quot;</span><span class="p">,</span> <span class="nx">setWidthToOffsetWidth</span><span class="p">);</span>

            <span class="p">}</span> <span class="k">else</span> <span class="p">{</span>

                <span class="k">if</span> <span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">dd</span><span class="p">)</span> <span class="p">{</span>
                    <span class="k">this</span><span class="p">.</span><span class="nx">dd</span><span class="p">.</span><span class="nx">unreg</span><span class="p">();</span>
                <span class="p">}</span>

                <span class="k">if</span> <span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">header</span><span class="p">)</span> <span class="p">{</span>
                    <span class="nx">Dom</span><span class="p">.</span><span class="nx">setStyle</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">header</span><span class="p">,</span><span class="s2">&quot;cursor&quot;</span><span class="p">,</span><span class="s2">&quot;auto&quot;</span><span class="p">);</span>
                <span class="p">}</span>

                <span class="k">this</span><span class="p">.</span><span class="nx">unsubscribe</span><span class="p">(</span><span class="s2">&quot;beforeShow&quot;</span><span class="p">,</span> <span class="nx">setWidthToOffsetWidth</span><span class="p">);</span>
            <span class="p">}</span>
        <span class="p">},</span>
      
        <span class="cm">/**</span>
<span class="cm">        * The default event handler fired when the &quot;underlay&quot; property </span>
<span class="cm">        * is changed.</span>
<span class="cm">        * @method configUnderlay</span>
<span class="cm">        * @param {String} type The CustomEvent type (usually the property name)</span>
<span class="cm">        * @param {Object[]} args The CustomEvent arguments. For configuration </span>
<span class="cm">        * handlers, args[0] will equal the newly applied value for the property.</span>
<span class="cm">        * @param {Object} obj The scope object. For configuration handlers, </span>
<span class="cm">        * this will usually equal the owner.</span>
<span class="cm">        */</span>
        <span class="nx">configUnderlay</span><span class="o">:</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">type</span><span class="p">,</span> <span class="nx">args</span><span class="p">,</span> <span class="nx">obj</span><span class="p">)</span> <span class="p">{</span>

            <span class="kd">var</span> <span class="nx">bMacGecko</span> <span class="o">=</span> <span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">platform</span> <span class="o">==</span> <span class="s2">&quot;mac&quot;</span> <span class="o">&amp;&amp;</span> <span class="nx">UA</span><span class="p">.</span><span class="nx">gecko</span><span class="p">),</span>
                <span class="nx">sUnderlay</span> <span class="o">=</span> <span class="nx">args</span><span class="p">[</span><span class="mi">0</span><span class="p">].</span><span class="nx">toLowerCase</span><span class="p">(),</span>
                <span class="nx">oUnderlay</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">underlay</span><span class="p">,</span>
                <span class="nx">oElement</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">element</span><span class="p">;</span>

            <span class="kd">function</span> <span class="nx">createUnderlay</span><span class="p">()</span> <span class="p">{</span>
                <span class="kd">var</span> <span class="nx">bNew</span> <span class="o">=</span> <span class="kc">false</span><span class="p">;</span>
                <span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">oUnderlay</span><span class="p">)</span> <span class="p">{</span> <span class="c1">// create if not already in DOM</span>

                    <span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">m_oUnderlayTemplate</span><span class="p">)</span> <span class="p">{</span>
                        <span class="nx">m_oUnderlayTemplate</span> <span class="o">=</span> <span class="nb">document</span><span class="p">.</span><span class="nx">createElement</span><span class="p">(</span><span class="s2">&quot;div&quot;</span><span class="p">);</span>
                        <span class="nx">m_oUnderlayTemplate</span><span class="p">.</span><span class="nx">className</span> <span class="o">=</span> <span class="s2">&quot;underlay&quot;</span><span class="p">;</span>
                    <span class="p">}</span>

                    <span class="nx">oUnderlay</span> <span class="o">=</span> <span class="nx">m_oUnderlayTemplate</span><span class="p">.</span><span class="nx">cloneNode</span><span class="p">(</span><span class="kc">false</span><span class="p">);</span>
                    <span class="k">this</span><span class="p">.</span><span class="nx">element</span><span class="p">.</span><span class="nx">appendChild</span><span class="p">(</span><span class="nx">oUnderlay</span><span class="p">);</span>

                    <span class="k">this</span><span class="p">.</span><span class="nx">underlay</span> <span class="o">=</span> <span class="nx">oUnderlay</span><span class="p">;</span>

                    <span class="k">if</span> <span class="p">(</span><span class="nx">bIEQuirks</span><span class="p">)</span> <span class="p">{</span>
                        <span class="k">this</span><span class="p">.</span><span class="nx">sizeUnderlay</span><span class="p">();</span>
                        <span class="k">this</span><span class="p">.</span><span class="nx">cfg</span><span class="p">.</span><span class="nx">subscribeToConfigEvent</span><span class="p">(</span><span class="s2">&quot;width&quot;</span><span class="p">,</span> <span class="k">this</span><span class="p">.</span><span class="nx">sizeUnderlay</span><span class="p">);</span>
                        <span class="k">this</span><span class="p">.</span><span class="nx">cfg</span><span class="p">.</span><span class="nx">subscribeToConfigEvent</span><span class="p">(</span><span class="s2">&quot;height&quot;</span><span class="p">,</span> <span class="k">this</span><span class="p">.</span><span class="nx">sizeUnderlay</span><span class="p">);</span>

                        <span class="k">this</span><span class="p">.</span><span class="nx">changeContentEvent</span><span class="p">.</span><span class="nx">subscribe</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">sizeUnderlay</span><span class="p">);</span>
                        <span class="nx">YAHOO</span><span class="p">.</span><span class="nx">widget</span><span class="p">.</span><span class="nx">Module</span><span class="p">.</span><span class="nx">textResizeEvent</span><span class="p">.</span><span class="nx">subscribe</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">sizeUnderlay</span><span class="p">,</span> <span class="k">this</span><span class="p">,</span> <span class="kc">true</span><span class="p">);</span>
                    <span class="p">}</span>

                    <span class="k">if</span> <span class="p">(</span><span class="nx">UA</span><span class="p">.</span><span class="nx">webkit</span> <span class="o">&amp;&amp;</span> <span class="nx">UA</span><span class="p">.</span><span class="nx">webkit</span> <span class="o">&lt;</span> <span class="mi">420</span><span class="p">)</span> <span class="p">{</span>
                        <span class="k">this</span><span class="p">.</span><span class="nx">changeContentEvent</span><span class="p">.</span><span class="nx">subscribe</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">forceUnderlayRedraw</span><span class="p">);</span>
                    <span class="p">}</span>

                    <span class="nx">bNew</span> <span class="o">=</span> <span class="kc">true</span><span class="p">;</span>
                <span class="p">}</span>
            <span class="p">}</span>

            <span class="kd">function</span> <span class="nx">onBeforeShow</span><span class="p">()</span> <span class="p">{</span>
                <span class="kd">var</span> <span class="nx">bNew</span> <span class="o">=</span> <span class="nx">createUnderlay</span><span class="p">.</span><span class="nx">call</span><span class="p">(</span><span class="k">this</span><span class="p">);</span>
                <span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">bNew</span> <span class="o">&amp;&amp;</span> <span class="nx">bIEQuirks</span><span class="p">)</span> <span class="p">{</span>
                    <span class="k">this</span><span class="p">.</span><span class="nx">sizeUnderlay</span><span class="p">();</span>
                <span class="p">}</span>
                <span class="k">this</span><span class="p">.</span><span class="nx">_underlayDeferred</span> <span class="o">=</span> <span class="kc">false</span><span class="p">;</span>
                <span class="k">this</span><span class="p">.</span><span class="nx">beforeShowEvent</span><span class="p">.</span><span class="nx">unsubscribe</span><span class="p">(</span><span class="nx">onBeforeShow</span><span class="p">);</span>
            <span class="p">}</span>

            <span class="kd">function</span> <span class="nx">destroyUnderlay</span><span class="p">()</span> <span class="p">{</span>
                <span class="k">if</span> <span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">_underlayDeferred</span><span class="p">)</span> <span class="p">{</span>
                    <span class="k">this</span><span class="p">.</span><span class="nx">beforeShowEvent</span><span class="p">.</span><span class="nx">unsubscribe</span><span class="p">(</span><span class="nx">onBeforeShow</span><span class="p">);</span>
                    <span class="k">this</span><span class="p">.</span><span class="nx">_underlayDeferred</span> <span class="o">=</span> <span class="kc">false</span><span class="p">;</span>
                <span class="p">}</span>

                <span class="k">if</span> <span class="p">(</span><span class="nx">oUnderlay</span><span class="p">)</span> <span class="p">{</span>
                    <span class="k">this</span><span class="p">.</span><span class="nx">cfg</span><span class="p">.</span><span class="nx">unsubscribeFromConfigEvent</span><span class="p">(</span><span class="s2">&quot;width&quot;</span><span class="p">,</span> <span class="k">this</span><span class="p">.</span><span class="nx">sizeUnderlay</span><span class="p">);</span>
                    <span class="k">this</span><span class="p">.</span><span class="nx">cfg</span><span class="p">.</span><span class="nx">unsubscribeFromConfigEvent</span><span class="p">(</span><span class="s2">&quot;height&quot;</span><span class="p">,</span><span class="k">this</span><span class="p">.</span><span class="nx">sizeUnderlay</span><span class="p">);</span>
                    <span class="k">this</span><span class="p">.</span><span class="nx">changeContentEvent</span><span class="p">.</span><span class="nx">unsubscribe</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">sizeUnderlay</span><span class="p">);</span>
                    <span class="k">this</span><span class="p">.</span><span class="nx">changeContentEvent</span><span class="p">.</span><span class="nx">unsubscribe</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">forceUnderlayRedraw</span><span class="p">);</span>
                    <span class="nx">YAHOO</span><span class="p">.</span><span class="nx">widget</span><span class="p">.</span><span class="nx">Module</span><span class="p">.</span><span class="nx">textResizeEvent</span><span class="p">.</span><span class="nx">unsubscribe</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">sizeUnderlay</span><span class="p">,</span> <span class="k">this</span><span class="p">,</span> <span class="kc">true</span><span class="p">);</span>

                    <span class="k">this</span><span class="p">.</span><span class="nx">element</span><span class="p">.</span><span class="nx">removeChild</span><span class="p">(</span><span class="nx">oUnderlay</span><span class="p">);</span>

                    <span class="k">this</span><span class="p">.</span><span class="nx">underlay</span> <span class="o">=</span> <span class="kc">null</span><span class="p">;</span>
                <span class="p">}</span>
            <span class="p">}</span>

            <span class="k">switch</span> <span class="p">(</span><span class="nx">sUnderlay</span><span class="p">)</span> <span class="p">{</span>
                <span class="k">case</span> <span class="s2">&quot;shadow&quot;</span><span class="o">:</span>
                    <span class="nx">Dom</span><span class="p">.</span><span class="nx">removeClass</span><span class="p">(</span><span class="nx">oElement</span><span class="p">,</span> <span class="s2">&quot;matte&quot;</span><span class="p">);</span>
                    <span class="nx">Dom</span><span class="p">.</span><span class="nx">addClass</span><span class="p">(</span><span class="nx">oElement</span><span class="p">,</span> <span class="s2">&quot;shadow&quot;</span><span class="p">);</span>
                    <span class="k">break</span><span class="p">;</span>
                <span class="k">case</span> <span class="s2">&quot;matte&quot;</span><span class="o">:</span>
                    <span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">bMacGecko</span><span class="p">)</span> <span class="p">{</span>
                        <span class="nx">destroyUnderlay</span><span class="p">.</span><span class="nx">call</span><span class="p">(</span><span class="k">this</span><span class="p">);</span>
                    <span class="p">}</span>
                    <span class="nx">Dom</span><span class="p">.</span><span class="nx">removeClass</span><span class="p">(</span><span class="nx">oElement</span><span class="p">,</span> <span class="s2">&quot;shadow&quot;</span><span class="p">);</span>
                    <span class="nx">Dom</span><span class="p">.</span><span class="nx">addClass</span><span class="p">(</span><span class="nx">oElement</span><span class="p">,</span> <span class="s2">&quot;matte&quot;</span><span class="p">);</span>
                    <span class="k">break</span><span class="p">;</span>
                <span class="k">default</span><span class="o">:</span>
                    <span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">bMacGecko</span><span class="p">)</span> <span class="p">{</span>
                        <span class="nx">destroyUnderlay</span><span class="p">.</span><span class="nx">call</span><span class="p">(</span><span class="k">this</span><span class="p">);</span>
                    <span class="p">}</span>
                    <span class="nx">Dom</span><span class="p">.</span><span class="nx">removeClass</span><span class="p">(</span><span class="nx">oElement</span><span class="p">,</span> <span class="s2">&quot;shadow&quot;</span><span class="p">);</span>
                    <span class="nx">Dom</span><span class="p">.</span><span class="nx">removeClass</span><span class="p">(</span><span class="nx">oElement</span><span class="p">,</span> <span class="s2">&quot;matte&quot;</span><span class="p">);</span>
                    <span class="k">break</span><span class="p">;</span>
            <span class="p">}</span>

            <span class="k">if</span> <span class="p">((</span><span class="nx">sUnderlay</span> <span class="o">==</span> <span class="s2">&quot;shadow&quot;</span><span class="p">)</span> <span class="o">||</span> <span class="p">(</span><span class="nx">bMacGecko</span> <span class="o">&amp;&amp;</span> <span class="o">!</span><span class="nx">oUnderlay</span><span class="p">))</span> <span class="p">{</span>
                <span class="k">if</span> <span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">cfg</span><span class="p">.</span><span class="nx">getProperty</span><span class="p">(</span><span class="s2">&quot;visible&quot;</span><span class="p">))</span> <span class="p">{</span>
                    <span class="kd">var</span> <span class="nx">bNew</span> <span class="o">=</span> <span class="nx">createUnderlay</span><span class="p">.</span><span class="nx">call</span><span class="p">(</span><span class="k">this</span><span class="p">);</span>
                    <span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">bNew</span> <span class="o">&amp;&amp;</span> <span class="nx">bIEQuirks</span><span class="p">)</span> <span class="p">{</span>
                        <span class="k">this</span><span class="p">.</span><span class="nx">sizeUnderlay</span><span class="p">();</span>
                    <span class="p">}</span>
                <span class="p">}</span> <span class="k">else</span> <span class="p">{</span>
                    <span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="k">this</span><span class="p">.</span><span class="nx">_underlayDeferred</span><span class="p">)</span> <span class="p">{</span>
                        <span class="k">this</span><span class="p">.</span><span class="nx">beforeShowEvent</span><span class="p">.</span><span class="nx">subscribe</span><span class="p">(</span><span class="nx">onBeforeShow</span><span class="p">);</span>
                        <span class="k">this</span><span class="p">.</span><span class="nx">_underlayDeferred</span> <span class="o">=</span> <span class="kc">true</span><span class="p">;</span>
                    <span class="p">}</span>
                <span class="p">}</span>
            <span class="p">}</span>
        <span class="p">},</span>
        
        <span class="cm">/**</span>
<span class="cm">        * The default event handler fired when the &quot;modal&quot; property is </span>
<span class="cm">        * changed. This handler subscribes or unsubscribes to the show and hide</span>
<span class="cm">        * events to handle the display or hide of the modality mask.</span>
<span class="cm">        * @method configModal</span>
<span class="cm">        * @param {String} type The CustomEvent type (usually the property name)</span>
<span class="cm">        * @param {Object[]} args The CustomEvent arguments. For configuration </span>
<span class="cm">        * handlers, args[0] will equal the newly applied value for the property.</span>
<span class="cm">        * @param {Object} obj The scope object. For configuration handlers, </span>
<span class="cm">        * this will usually equal the owner.</span>
<span class="cm">        */</span>
        <span class="nx">configModal</span><span class="o">:</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">type</span><span class="p">,</span> <span class="nx">args</span><span class="p">,</span> <span class="nx">obj</span><span class="p">)</span> <span class="p">{</span>

            <span class="kd">var</span> <span class="nx">modal</span> <span class="o">=</span> <span class="nx">args</span><span class="p">[</span><span class="mi">0</span><span class="p">];</span>
            <span class="k">if</span> <span class="p">(</span><span class="nx">modal</span><span class="p">)</span> <span class="p">{</span>
                <span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="k">this</span><span class="p">.</span><span class="nx">_hasModalityEventListeners</span><span class="p">)</span> <span class="p">{</span>

                    <span class="k">this</span><span class="p">.</span><span class="nx">subscribe</span><span class="p">(</span><span class="s2">&quot;beforeShow&quot;</span><span class="p">,</span> <span class="k">this</span><span class="p">.</span><span class="nx">buildMask</span><span class="p">);</span>
                    <span class="k">this</span><span class="p">.</span><span class="nx">subscribe</span><span class="p">(</span><span class="s2">&quot;beforeShow&quot;</span><span class="p">,</span> <span class="k">this</span><span class="p">.</span><span class="nx">bringToTop</span><span class="p">);</span>
                    <span class="k">this</span><span class="p">.</span><span class="nx">subscribe</span><span class="p">(</span><span class="s2">&quot;beforeShow&quot;</span><span class="p">,</span> <span class="k">this</span><span class="p">.</span><span class="nx">showMask</span><span class="p">);</span>
                    <span class="k">this</span><span class="p">.</span><span class="nx">subscribe</span><span class="p">(</span><span class="s2">&quot;hide&quot;</span><span class="p">,</span> <span class="k">this</span><span class="p">.</span><span class="nx">hideMask</span><span class="p">);</span>

                    <span class="nx">Overlay</span><span class="p">.</span><span class="nx">windowResizeEvent</span><span class="p">.</span><span class="nx">subscribe</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">sizeMask</span><span class="p">,</span> 
                        <span class="k">this</span><span class="p">,</span> <span class="kc">true</span><span class="p">);</span>

                    <span class="k">this</span><span class="p">.</span><span class="nx">_hasModalityEventListeners</span> <span class="o">=</span> <span class="kc">true</span><span class="p">;</span>
                <span class="p">}</span>
            <span class="p">}</span> <span class="k">else</span> <span class="p">{</span>
                <span class="k">if</span> <span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">_hasModalityEventListeners</span><span class="p">)</span> <span class="p">{</span>

                    <span class="k">if</span> <span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">cfg</span><span class="p">.</span><span class="nx">getProperty</span><span class="p">(</span><span class="s2">&quot;visible&quot;</span><span class="p">))</span> <span class="p">{</span>
                        <span class="k">this</span><span class="p">.</span><span class="nx">hideMask</span><span class="p">();</span>
                        <span class="k">this</span><span class="p">.</span><span class="nx">removeMask</span><span class="p">();</span>
                    <span class="p">}</span>

                    <span class="k">this</span><span class="p">.</span><span class="nx">unsubscribe</span><span class="p">(</span><span class="s2">&quot;beforeShow&quot;</span><span class="p">,</span> <span class="k">this</span><span class="p">.</span><span class="nx">buildMask</span><span class="p">);</span>
                    <span class="k">this</span><span class="p">.</span><span class="nx">unsubscribe</span><span class="p">(</span><span class="s2">&quot;beforeShow&quot;</span><span class="p">,</span> <span class="k">this</span><span class="p">.</span><span class="nx">bringToTop</span><span class="p">);</span>
                    <span class="k">this</span><span class="p">.</span><span class="nx">unsubscribe</span><span class="p">(</span><span class="s2">&quot;beforeShow&quot;</span><span class="p">,</span> <span class="k">this</span><span class="p">.</span><span class="nx">showMask</span><span class="p">);</span>
                    <span class="k">this</span><span class="p">.</span><span class="nx">unsubscribe</span><span class="p">(</span><span class="s2">&quot;hide&quot;</span><span class="p">,</span> <span class="k">this</span><span class="p">.</span><span class="nx">hideMask</span><span class="p">);</span>

                    <span class="nx">Overlay</span><span class="p">.</span><span class="nx">windowResizeEvent</span><span class="p">.</span><span class="nx">unsubscribe</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">sizeMask</span><span class="p">,</span> <span class="k">this</span><span class="p">);</span>

                    <span class="k">this</span><span class="p">.</span><span class="nx">_hasModalityEventListeners</span> <span class="o">=</span> <span class="kc">false</span><span class="p">;</span>
                <span class="p">}</span>
            <span class="p">}</span>
        <span class="p">},</span>

        <span class="cm">/**</span>
<span class="cm">        * Removes the modality mask.</span>
<span class="cm">        * @method removeMask</span>
<span class="cm">        */</span>
        <span class="nx">removeMask</span><span class="o">:</span> <span class="kd">function</span> <span class="p">()</span> <span class="p">{</span>

            <span class="kd">var</span> <span class="nx">oMask</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">mask</span><span class="p">,</span>
                <span class="nx">oParentNode</span><span class="p">;</span>

            <span class="k">if</span> <span class="p">(</span><span class="nx">oMask</span><span class="p">)</span> <span class="p">{</span>
                <span class="cm">/*</span>
<span class="cm">                    Hide the mask before destroying it to ensure that DOM</span>
<span class="cm">                    event handlers on focusable elements get removed.</span>
<span class="cm">                */</span>
                <span class="k">this</span><span class="p">.</span><span class="nx">hideMask</span><span class="p">();</span>

                <span class="nx">oParentNode</span> <span class="o">=</span> <span class="nx">oMask</span><span class="p">.</span><span class="nx">parentNode</span><span class="p">;</span>
                <span class="k">if</span> <span class="p">(</span><span class="nx">oParentNode</span><span class="p">)</span> <span class="p">{</span>
                    <span class="nx">oParentNode</span><span class="p">.</span><span class="nx">removeChild</span><span class="p">(</span><span class="nx">oMask</span><span class="p">);</span>
                <span class="p">}</span>

                <span class="k">this</span><span class="p">.</span><span class="nx">mask</span> <span class="o">=</span> <span class="kc">null</span><span class="p">;</span>
            <span class="p">}</span>
        <span class="p">},</span>
        
        <span class="cm">/**</span>
<span class="cm">        * The default event handler fired when the &quot;keylisteners&quot; property </span>
<span class="cm">        * is changed.</span>
<span class="cm">        * @method configKeyListeners</span>
<span class="cm">        * @param {String} type The CustomEvent type (usually the property name)</span>
<span class="cm">        * @param {Object[]} args The CustomEvent arguments. For configuration</span>
<span class="cm">        * handlers, args[0] will equal the newly applied value for the property.</span>
<span class="cm">        * @param {Object} obj The scope object. For configuration handlers, </span>
<span class="cm">        * this will usually equal the owner.</span>
<span class="cm">        */</span>
        <span class="nx">configKeyListeners</span><span class="o">:</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">type</span><span class="p">,</span> <span class="nx">args</span><span class="p">,</span> <span class="nx">obj</span><span class="p">)</span> <span class="p">{</span>

            <span class="kd">var</span> <span class="nx">listeners</span> <span class="o">=</span> <span class="nx">args</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span>
                <span class="nx">listener</span><span class="p">,</span>
                <span class="nx">nListeners</span><span class="p">,</span>
                <span class="nx">i</span><span class="p">;</span>
        
            <span class="k">if</span> <span class="p">(</span><span class="nx">listeners</span><span class="p">)</span> <span class="p">{</span>

                <span class="k">if</span> <span class="p">(</span><span class="nx">listeners</span> <span class="k">instanceof</span> <span class="nb">Array</span><span class="p">)</span> <span class="p">{</span>

                    <span class="nx">nListeners</span> <span class="o">=</span> <span class="nx">listeners</span><span class="p">.</span><span class="nx">length</span><span class="p">;</span>

                    <span class="k">for</span> <span class="p">(</span><span class="nx">i</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> <span class="nx">i</span> <span class="o">&lt;</span> <span class="nx">nListeners</span><span class="p">;</span> <span class="nx">i</span><span class="o">++</span><span class="p">)</span> <span class="p">{</span>

                        <span class="nx">listener</span> <span class="o">=</span> <span class="nx">listeners</span><span class="p">[</span><span class="nx">i</span><span class="p">];</span>
        
                        <span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">Config</span><span class="p">.</span><span class="nx">alreadySubscribed</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">showEvent</span><span class="p">,</span> 
                            <span class="nx">listener</span><span class="p">.</span><span class="nx">enable</span><span class="p">,</span> <span class="nx">listener</span><span class="p">))</span> <span class="p">{</span>

                            <span class="k">this</span><span class="p">.</span><span class="nx">showEvent</span><span class="p">.</span><span class="nx">subscribe</span><span class="p">(</span><span class="nx">listener</span><span class="p">.</span><span class="nx">enable</span><span class="p">,</span> 
                                <span class="nx">listener</span><span class="p">,</span> <span class="kc">true</span><span class="p">);</span>

                        <span class="p">}</span>

                        <span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">Config</span><span class="p">.</span><span class="nx">alreadySubscribed</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">hideEvent</span><span class="p">,</span> 
                            <span class="nx">listener</span><span class="p">.</span><span class="nx">disable</span><span class="p">,</span> <span class="nx">listener</span><span class="p">))</span> <span class="p">{</span>

                            <span class="k">this</span><span class="p">.</span><span class="nx">hideEvent</span><span class="p">.</span><span class="nx">subscribe</span><span class="p">(</span><span class="nx">listener</span><span class="p">.</span><span class="nx">disable</span><span class="p">,</span> 
                                <span class="nx">listener</span><span class="p">,</span> <span class="kc">true</span><span class="p">);</span>

                            <span class="k">this</span><span class="p">.</span><span class="nx">destroyEvent</span><span class="p">.</span><span class="nx">subscribe</span><span class="p">(</span><span class="nx">listener</span><span class="p">.</span><span class="nx">disable</span><span class="p">,</span> 
                                <span class="nx">listener</span><span class="p">,</span> <span class="kc">true</span><span class="p">);</span>
                        <span class="p">}</span>
                    <span class="p">}</span>

                <span class="p">}</span> <span class="k">else</span> <span class="p">{</span>

                    <span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">Config</span><span class="p">.</span><span class="nx">alreadySubscribed</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">showEvent</span><span class="p">,</span> 
                        <span class="nx">listeners</span><span class="p">.</span><span class="nx">enable</span><span class="p">,</span> <span class="nx">listeners</span><span class="p">))</span> <span class="p">{</span>

                        <span class="k">this</span><span class="p">.</span><span class="nx">showEvent</span><span class="p">.</span><span class="nx">subscribe</span><span class="p">(</span><span class="nx">listeners</span><span class="p">.</span><span class="nx">enable</span><span class="p">,</span> 
                            <span class="nx">listeners</span><span class="p">,</span> <span class="kc">true</span><span class="p">);</span>
                    <span class="p">}</span>

                    <span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">Config</span><span class="p">.</span><span class="nx">alreadySubscribed</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">hideEvent</span><span class="p">,</span> 
                        <span class="nx">listeners</span><span class="p">.</span><span class="nx">disable</span><span class="p">,</span> <span class="nx">listeners</span><span class="p">))</span> <span class="p">{</span>

                        <span class="k">this</span><span class="p">.</span><span class="nx">hideEvent</span><span class="p">.</span><span class="nx">subscribe</span><span class="p">(</span><span class="nx">listeners</span><span class="p">.</span><span class="nx">disable</span><span class="p">,</span> 
                            <span class="nx">listeners</span><span class="p">,</span> <span class="kc">true</span><span class="p">);</span>

                        <span class="k">this</span><span class="p">.</span><span class="nx">destroyEvent</span><span class="p">.</span><span class="nx">subscribe</span><span class="p">(</span><span class="nx">listeners</span><span class="p">.</span><span class="nx">disable</span><span class="p">,</span> 
                            <span class="nx">listeners</span><span class="p">,</span> <span class="kc">true</span><span class="p">);</span>

                    <span class="p">}</span>

                <span class="p">}</span>

            <span class="p">}</span>

        <span class="p">},</span>

        <span class="cm">/**</span>
<span class="cm">        * The default handler for the &quot;strings&quot; property</span>
<span class="cm">        * @method configStrings</span>
<span class="cm">        */</span>
        <span class="nx">configStrings</span> <span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">type</span><span class="p">,</span> <span class="nx">args</span><span class="p">,</span> <span class="nx">obj</span><span class="p">)</span> <span class="p">{</span>
            <span class="kd">var</span> <span class="nx">val</span> <span class="o">=</span> <span class="nx">Lang</span><span class="p">.</span><span class="nx">merge</span><span class="p">(</span><span class="nx">DEFAULT_CONFIG</span><span class="p">.</span><span class="nx">STRINGS</span><span class="p">.</span><span class="nx">value</span><span class="p">,</span> <span class="nx">args</span><span class="p">[</span><span class="mi">0</span><span class="p">]);</span>
            <span class="k">this</span><span class="p">.</span><span class="nx">cfg</span><span class="p">.</span><span class="nx">setProperty</span><span class="p">(</span><span class="nx">DEFAULT_CONFIG</span><span class="p">.</span><span class="nx">STRINGS</span><span class="p">.</span><span class="nx">key</span><span class="p">,</span> <span class="nx">val</span><span class="p">,</span> <span class="kc">true</span><span class="p">);</span>
        <span class="p">},</span>

        <span class="cm">/**</span>
<span class="cm">        * The default event handler fired when the &quot;height&quot; property is changed.</span>
<span class="cm">        * @method configHeight</span>
<span class="cm">        * @param {String} type The CustomEvent type (usually the property name)</span>
<span class="cm">        * @param {Object[]} args The CustomEvent arguments. For configuration </span>
<span class="cm">        * handlers, args[0] will equal the newly applied value for the property.</span>
<span class="cm">        * @param {Object} obj The scope object. For configuration handlers, </span>
<span class="cm">        * this will usually equal the owner.</span>
<span class="cm">        */</span>
        <span class="nx">configHeight</span><span class="o">:</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">type</span><span class="p">,</span> <span class="nx">args</span><span class="p">,</span> <span class="nx">obj</span><span class="p">)</span> <span class="p">{</span>
            <span class="kd">var</span> <span class="nx">height</span> <span class="o">=</span> <span class="nx">args</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span>
                <span class="nx">el</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">innerElement</span><span class="p">;</span>

            <span class="nx">Dom</span><span class="p">.</span><span class="nx">setStyle</span><span class="p">(</span><span class="nx">el</span><span class="p">,</span> <span class="s2">&quot;height&quot;</span><span class="p">,</span> <span class="nx">height</span><span class="p">);</span>
            <span class="k">this</span><span class="p">.</span><span class="nx">cfg</span><span class="p">.</span><span class="nx">refireEvent</span><span class="p">(</span><span class="s2">&quot;iframe&quot;</span><span class="p">);</span>
        <span class="p">},</span>

        <span class="cm">/**</span>
<span class="cm">         * The default custom event handler executed when the Panel&#39;s height is changed, </span>
<span class="cm">         * if the autofillheight property has been set.</span>
<span class="cm">         *</span>
<span class="cm">         * @method _autoFillOnHeightChange</span>
<span class="cm">         * @protected</span>
<span class="cm">         * @param {String} type The event type</span>
<span class="cm">         * @param {Array} args The array of arguments passed to event subscribers</span>
<span class="cm">         * @param {HTMLElement} el The header, body or footer element which is to be resized to fill</span>
<span class="cm">         * out the containers height</span>
<span class="cm">         */</span>
        <span class="nx">_autoFillOnHeightChange</span> <span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">type</span><span class="p">,</span> <span class="nx">args</span><span class="p">,</span> <span class="nx">el</span><span class="p">)</span> <span class="p">{</span>
            <span class="nx">Panel</span><span class="p">.</span><span class="nx">superclass</span><span class="p">.</span><span class="nx">_autoFillOnHeightChange</span><span class="p">.</span><span class="nx">apply</span><span class="p">(</span><span class="k">this</span><span class="p">,</span> <span class="nx">arguments</span><span class="p">);</span>
            <span class="k">if</span> <span class="p">(</span><span class="nx">bIEQuirks</span><span class="p">)</span> <span class="p">{</span>
                <span class="kd">var</span> <span class="nx">panel</span> <span class="o">=</span> <span class="k">this</span><span class="p">;</span>
                <span class="nx">setTimeout</span><span class="p">(</span><span class="kd">function</span><span class="p">()</span> <span class="p">{</span>
                    <span class="nx">panel</span><span class="p">.</span><span class="nx">sizeUnderlay</span><span class="p">();</span>
                <span class="p">},</span><span class="mi">0</span><span class="p">);</span>
            <span class="p">}</span>
        <span class="p">},</span>

        <span class="cm">/**</span>
<span class="cm">        * The default event handler fired when the &quot;width&quot; property is changed.</span>
<span class="cm">        * @method configWidth</span>
<span class="cm">        * @param {String} type The CustomEvent type (usually the property name)</span>
<span class="cm">        * @param {Object[]} args The CustomEvent arguments. For configuration </span>
<span class="cm">        * handlers, args[0] will equal the newly applied value for the property.</span>
<span class="cm">        * @param {Object} obj The scope object. For configuration handlers, </span>
<span class="cm">        * this will usually equal the owner.</span>
<span class="cm">        */</span>
        <span class="nx">configWidth</span><span class="o">:</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">type</span><span class="p">,</span> <span class="nx">args</span><span class="p">,</span> <span class="nx">obj</span><span class="p">)</span> <span class="p">{</span>
    
            <span class="kd">var</span> <span class="nx">width</span> <span class="o">=</span> <span class="nx">args</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span>
                <span class="nx">el</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">innerElement</span><span class="p">;</span>
    
            <span class="nx">Dom</span><span class="p">.</span><span class="nx">setStyle</span><span class="p">(</span><span class="nx">el</span><span class="p">,</span> <span class="s2">&quot;width&quot;</span><span class="p">,</span> <span class="nx">width</span><span class="p">);</span>
            <span class="k">this</span><span class="p">.</span><span class="nx">cfg</span><span class="p">.</span><span class="nx">refireEvent</span><span class="p">(</span><span class="s2">&quot;iframe&quot;</span><span class="p">);</span>
    
        <span class="p">},</span>
        
        <span class="cm">/**</span>
<span class="cm">        * The default event handler fired when the &quot;zIndex&quot; property is changed.</span>
<span class="cm">        * @method configzIndex</span>
<span class="cm">        * @param {String} type The CustomEvent type (usually the property name)</span>
<span class="cm">        * @param {Object[]} args The CustomEvent arguments. For configuration </span>
<span class="cm">        * handlers, args[0] will equal the newly applied value for the property.</span>
<span class="cm">        * @param {Object} obj The scope object. For configuration handlers, </span>
<span class="cm">        * this will usually equal the owner.</span>
<span class="cm">        */</span>
        <span class="nx">configzIndex</span><span class="o">:</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">type</span><span class="p">,</span> <span class="nx">args</span><span class="p">,</span> <span class="nx">obj</span><span class="p">)</span> <span class="p">{</span>
            <span class="nx">Panel</span><span class="p">.</span><span class="nx">superclass</span><span class="p">.</span><span class="nx">configzIndex</span><span class="p">.</span><span class="nx">call</span><span class="p">(</span><span class="k">this</span><span class="p">,</span> <span class="nx">type</span><span class="p">,</span> <span class="nx">args</span><span class="p">,</span> <span class="nx">obj</span><span class="p">);</span>

            <span class="k">if</span> <span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">mask</span> <span class="o">||</span> <span class="k">this</span><span class="p">.</span><span class="nx">cfg</span><span class="p">.</span><span class="nx">getProperty</span><span class="p">(</span><span class="s2">&quot;modal&quot;</span><span class="p">)</span> <span class="o">===</span> <span class="kc">true</span><span class="p">)</span> <span class="p">{</span>
                <span class="kd">var</span> <span class="nx">panelZ</span> <span class="o">=</span> <span class="nx">Dom</span><span class="p">.</span><span class="nx">getStyle</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">element</span><span class="p">,</span> <span class="s2">&quot;zIndex&quot;</span><span class="p">);</span>
                <span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">panelZ</span> <span class="o">||</span> <span class="nb">isNaN</span><span class="p">(</span><span class="nx">panelZ</span><span class="p">))</span> <span class="p">{</span>
                    <span class="nx">panelZ</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span>
                <span class="p">}</span>

                <span class="k">if</span> <span class="p">(</span><span class="nx">panelZ</span> <span class="o">===</span> <span class="mi">0</span><span class="p">)</span> <span class="p">{</span>
                    <span class="c1">// Recursive call to configzindex (which should be stopped</span>
                    <span class="c1">// from going further because panelZ should no longer === 0)</span>
                    <span class="k">this</span><span class="p">.</span><span class="nx">cfg</span><span class="p">.</span><span class="nx">setProperty</span><span class="p">(</span><span class="s2">&quot;zIndex&quot;</span><span class="p">,</span> <span class="mi">1</span><span class="p">);</span>
                <span class="p">}</span> <span class="k">else</span> <span class="p">{</span>
                    <span class="k">this</span><span class="p">.</span><span class="nx">stackMask</span><span class="p">();</span>
                <span class="p">}</span>
            <span class="p">}</span>
        <span class="p">},</span>

        <span class="c1">// END BUILT-IN PROPERTY EVENT HANDLERS //</span>
        <span class="cm">/**</span>
<span class="cm">        * Builds the wrapping container around the Panel that is used for </span>
<span class="cm">        * positioning the shadow and matte underlays. The container element is </span>
<span class="cm">        * assigned to a  local instance variable called container, and the </span>
<span class="cm">        * element is reinserted inside of it.</span>
<span class="cm">        * @method buildWrapper</span>
<span class="cm">        */</span>
        <span class="nx">buildWrapper</span><span class="o">:</span> <span class="kd">function</span> <span class="p">()</span> <span class="p">{</span>

            <span class="kd">var</span> <span class="nx">elementParent</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">element</span><span class="p">.</span><span class="nx">parentNode</span><span class="p">,</span>
                <span class="nx">originalElement</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">element</span><span class="p">,</span>
                <span class="nx">wrapper</span> <span class="o">=</span> <span class="nb">document</span><span class="p">.</span><span class="nx">createElement</span><span class="p">(</span><span class="s2">&quot;div&quot;</span><span class="p">);</span>

            <span class="nx">wrapper</span><span class="p">.</span><span class="nx">className</span> <span class="o">=</span> <span class="nx">Panel</span><span class="p">.</span><span class="nx">CSS_PANEL_CONTAINER</span><span class="p">;</span>
            <span class="nx">wrapper</span><span class="p">.</span><span class="nx">id</span> <span class="o">=</span> <span class="nx">originalElement</span><span class="p">.</span><span class="nx">id</span> <span class="o">+</span> <span class="s2">&quot;_c&quot;</span><span class="p">;</span>

            <span class="k">if</span> <span class="p">(</span><span class="nx">elementParent</span><span class="p">)</span> <span class="p">{</span>
                <span class="nx">elementParent</span><span class="p">.</span><span class="nx">insertBefore</span><span class="p">(</span><span class="nx">wrapper</span><span class="p">,</span> <span class="nx">originalElement</span><span class="p">);</span>
            <span class="p">}</span>

            <span class="nx">wrapper</span><span class="p">.</span><span class="nx">appendChild</span><span class="p">(</span><span class="nx">originalElement</span><span class="p">);</span>

            <span class="k">this</span><span class="p">.</span><span class="nx">element</span> <span class="o">=</span> <span class="nx">wrapper</span><span class="p">;</span>
            <span class="k">this</span><span class="p">.</span><span class="nx">innerElement</span> <span class="o">=</span> <span class="nx">originalElement</span><span class="p">;</span>

            <span class="nx">Dom</span><span class="p">.</span><span class="nx">setStyle</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">innerElement</span><span class="p">,</span> <span class="s2">&quot;visibility&quot;</span><span class="p">,</span> <span class="s2">&quot;inherit&quot;</span><span class="p">);</span>
        <span class="p">},</span>

        <span class="cm">/**</span>
<span class="cm">        * Adjusts the size of the shadow based on the size of the element.</span>
<span class="cm">        * @method sizeUnderlay</span>
<span class="cm">        */</span>
        <span class="nx">sizeUnderlay</span><span class="o">:</span> <span class="kd">function</span> <span class="p">()</span> <span class="p">{</span>
            <span class="kd">var</span> <span class="nx">oUnderlay</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">underlay</span><span class="p">,</span>
                <span class="nx">oElement</span><span class="p">;</span>

            <span class="k">if</span> <span class="p">(</span><span class="nx">oUnderlay</span><span class="p">)</span> <span class="p">{</span>
                <span class="nx">oElement</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">element</span><span class="p">;</span>
                <span class="nx">oUnderlay</span><span class="p">.</span><span class="nx">style</span><span class="p">.</span><span class="nx">width</span> <span class="o">=</span> <span class="nx">oElement</span><span class="p">.</span><span class="nx">offsetWidth</span> <span class="o">+</span> <span class="s2">&quot;px&quot;</span><span class="p">;</span>
                <span class="nx">oUnderlay</span><span class="p">.</span><span class="nx">style</span><span class="p">.</span><span class="nx">height</span> <span class="o">=</span> <span class="nx">oElement</span><span class="p">.</span><span class="nx">offsetHeight</span> <span class="o">+</span> <span class="s2">&quot;px&quot;</span><span class="p">;</span>
            <span class="p">}</span>
        <span class="p">},</span>

        <span class="cm">/**</span>
<span class="cm">        * Registers the Panel&#39;s header for drag &amp; drop capability.</span>
<span class="cm">        * @method registerDragDrop</span>
<span class="cm">        */</span>
        <span class="nx">registerDragDrop</span><span class="o">:</span> <span class="kd">function</span> <span class="p">()</span> <span class="p">{</span>

            <span class="kd">var</span> <span class="nx">me</span> <span class="o">=</span> <span class="k">this</span><span class="p">;</span>

            <span class="k">if</span> <span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">header</span><span class="p">)</span> <span class="p">{</span>

                <span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">Util</span><span class="p">.</span><span class="nx">DD</span><span class="p">)</span> <span class="p">{</span>
                    <span class="nx">YAHOO</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="s2">&quot;DD dependency not met.&quot;</span><span class="p">,</span> <span class="s2">&quot;error&quot;</span><span class="p">);</span>
                    <span class="k">return</span><span class="p">;</span>
                <span class="p">}</span>

                <span class="kd">var</span> <span class="nx">bDragOnly</span> <span class="o">=</span> <span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">cfg</span><span class="p">.</span><span class="nx">getProperty</span><span class="p">(</span><span class="s2">&quot;dragonly&quot;</span><span class="p">)</span> <span class="o">===</span> <span class="kc">true</span><span class="p">);</span>

                <span class="cm">/**</span>
<span class="cm">                 * The YAHOO.util.DD instance, used to implement the draggable header for the panel if draggable is enabled</span>
<span class="cm">                 *</span>
<span class="cm">                 * @property dd</span>
<span class="cm">                 * @type YAHOO.util.DD</span>
<span class="cm">                 */</span>
                <span class="k">this</span><span class="p">.</span><span class="nx">dd</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">Util</span><span class="p">.</span><span class="nx">DD</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">element</span><span class="p">.</span><span class="nx">id</span><span class="p">,</span> <span class="k">this</span><span class="p">.</span><span class="nx">id</span><span class="p">,</span> <span class="p">{</span><span class="nx">dragOnly</span><span class="o">:</span> <span class="nx">bDragOnly</span><span class="p">});</span>

                <span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="k">this</span><span class="p">.</span><span class="nx">header</span><span class="p">.</span><span class="nx">id</span><span class="p">)</span> <span class="p">{</span>
                    <span class="k">this</span><span class="p">.</span><span class="nx">header</span><span class="p">.</span><span class="nx">id</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">id</span> <span class="o">+</span> <span class="s2">&quot;_h&quot;</span><span class="p">;</span>
                <span class="p">}</span>

                <span class="k">this</span><span class="p">.</span><span class="nx">dd</span><span class="p">.</span><span class="nx">startDrag</span> <span class="o">=</span> <span class="kd">function</span> <span class="p">()</span> <span class="p">{</span>

                    <span class="kd">var</span> <span class="nx">offsetHeight</span><span class="p">,</span>
                        <span class="nx">offsetWidth</span><span class="p">,</span>
                        <span class="nx">viewPortWidth</span><span class="p">,</span>
                        <span class="nx">viewPortHeight</span><span class="p">,</span>
                        <span class="nx">scrollX</span><span class="p">,</span>
                        <span class="nx">scrollY</span><span class="p">;</span>

                    <span class="k">if</span> <span class="p">(</span><span class="nx">YAHOO</span><span class="p">.</span><span class="nx">env</span><span class="p">.</span><span class="nx">ua</span><span class="p">.</span><span class="nx">ie</span> <span class="o">==</span> <span class="mi">6</span><span class="p">)</span> <span class="p">{</span>
                        <span class="nx">Dom</span><span class="p">.</span><span class="nx">addClass</span><span class="p">(</span><span class="nx">me</span><span class="p">.</span><span class="nx">element</span><span class="p">,</span><span class="s2">&quot;drag&quot;</span><span class="p">);</span>
                    <span class="p">}</span>

                    <span class="k">if</span> <span class="p">(</span><span class="nx">me</span><span class="p">.</span><span class="nx">cfg</span><span class="p">.</span><span class="nx">getProperty</span><span class="p">(</span><span class="s2">&quot;constraintoviewport&quot;</span><span class="p">))</span> <span class="p">{</span>

                        <span class="kd">var</span> <span class="nx">nViewportOffset</span> <span class="o">=</span> <span class="nx">Overlay</span><span class="p">.</span><span class="nx">VIEWPORT_OFFSET</span><span class="p">;</span>

                        <span class="nx">offsetHeight</span> <span class="o">=</span> <span class="nx">me</span><span class="p">.</span><span class="nx">element</span><span class="p">.</span><span class="nx">offsetHeight</span><span class="p">;</span>
                        <span class="nx">offsetWidth</span> <span class="o">=</span> <span class="nx">me</span><span class="p">.</span><span class="nx">element</span><span class="p">.</span><span class="nx">offsetWidth</span><span class="p">;</span>

                        <span class="nx">viewPortWidth</span> <span class="o">=</span> <span class="nx">Dom</span><span class="p">.</span><span class="nx">getViewportWidth</span><span class="p">();</span>
                        <span class="nx">viewPortHeight</span> <span class="o">=</span> <span class="nx">Dom</span><span class="p">.</span><span class="nx">getViewportHeight</span><span class="p">();</span>

                        <span class="nx">scrollX</span> <span class="o">=</span> <span class="nx">Dom</span><span class="p">.</span><span class="nx">getDocumentScrollLeft</span><span class="p">();</span>
                        <span class="nx">scrollY</span> <span class="o">=</span> <span class="nx">Dom</span><span class="p">.</span><span class="nx">getDocumentScrollTop</span><span class="p">();</span>

                        <span class="k">if</span> <span class="p">(</span><span class="nx">offsetHeight</span> <span class="o">+</span> <span class="nx">nViewportOffset</span> <span class="o">&lt;</span> <span class="nx">viewPortHeight</span><span class="p">)</span> <span class="p">{</span>
                            <span class="k">this</span><span class="p">.</span><span class="nx">minY</span> <span class="o">=</span> <span class="nx">scrollY</span> <span class="o">+</span> <span class="nx">nViewportOffset</span><span class="p">;</span>
                            <span class="k">this</span><span class="p">.</span><span class="nx">maxY</span> <span class="o">=</span> <span class="nx">scrollY</span> <span class="o">+</span> <span class="nx">viewPortHeight</span> <span class="o">-</span> <span class="nx">offsetHeight</span> <span class="o">-</span> <span class="nx">nViewportOffset</span><span class="p">;</span>
                        <span class="p">}</span> <span class="k">else</span> <span class="p">{</span>
                            <span class="k">this</span><span class="p">.</span><span class="nx">minY</span> <span class="o">=</span> <span class="nx">scrollY</span> <span class="o">+</span> <span class="nx">nViewportOffset</span><span class="p">;</span>
                            <span class="k">this</span><span class="p">.</span><span class="nx">maxY</span> <span class="o">=</span> <span class="nx">scrollY</span> <span class="o">+</span> <span class="nx">nViewportOffset</span><span class="p">;</span>
                        <span class="p">}</span>

                        <span class="k">if</span> <span class="p">(</span><span class="nx">offsetWidth</span> <span class="o">+</span> <span class="nx">nViewportOffset</span> <span class="o">&lt;</span> <span class="nx">viewPortWidth</span><span class="p">)</span> <span class="p">{</span>
                            <span class="k">this</span><span class="p">.</span><span class="nx">minX</span> <span class="o">=</span> <span class="nx">scrollX</span> <span class="o">+</span> <span class="nx">nViewportOffset</span><span class="p">;</span>
                            <span class="k">this</span><span class="p">.</span><span class="nx">maxX</span> <span class="o">=</span> <span class="nx">scrollX</span> <span class="o">+</span> <span class="nx">viewPortWidth</span> <span class="o">-</span> <span class="nx">offsetWidth</span> <span class="o">-</span> <span class="nx">nViewportOffset</span><span class="p">;</span>
                        <span class="p">}</span> <span class="k">else</span> <span class="p">{</span>
                            <span class="k">this</span><span class="p">.</span><span class="nx">minX</span> <span class="o">=</span> <span class="nx">scrollX</span> <span class="o">+</span> <span class="nx">nViewportOffset</span><span class="p">;</span>
                            <span class="k">this</span><span class="p">.</span><span class="nx">maxX</span> <span class="o">=</span> <span class="nx">scrollX</span> <span class="o">+</span> <span class="nx">nViewportOffset</span><span class="p">;</span>
                        <span class="p">}</span>

                        <span class="k">this</span><span class="p">.</span><span class="nx">constrainX</span> <span class="o">=</span> <span class="kc">true</span><span class="p">;</span>
                        <span class="k">this</span><span class="p">.</span><span class="nx">constrainY</span> <span class="o">=</span> <span class="kc">true</span><span class="p">;</span>
                    <span class="p">}</span> <span class="k">else</span> <span class="p">{</span>
                        <span class="k">this</span><span class="p">.</span><span class="nx">constrainX</span> <span class="o">=</span> <span class="kc">false</span><span class="p">;</span>
                        <span class="k">this</span><span class="p">.</span><span class="nx">constrainY</span> <span class="o">=</span> <span class="kc">false</span><span class="p">;</span>
                    <span class="p">}</span>

                    <span class="nx">me</span><span class="p">.</span><span class="nx">dragEvent</span><span class="p">.</span><span class="nx">fire</span><span class="p">(</span><span class="s2">&quot;startDrag&quot;</span><span class="p">,</span> <span class="nx">arguments</span><span class="p">);</span>
                <span class="p">};</span>

                <span class="k">this</span><span class="p">.</span><span class="nx">dd</span><span class="p">.</span><span class="nx">onDrag</span> <span class="o">=</span> <span class="kd">function</span> <span class="p">()</span> <span class="p">{</span>
                    <span class="nx">me</span><span class="p">.</span><span class="nx">syncPosition</span><span class="p">();</span>
                    <span class="nx">me</span><span class="p">.</span><span class="nx">cfg</span><span class="p">.</span><span class="nx">refireEvent</span><span class="p">(</span><span class="s2">&quot;iframe&quot;</span><span class="p">);</span>
                    <span class="k">if</span> <span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">platform</span> <span class="o">==</span> <span class="s2">&quot;mac&quot;</span> <span class="o">&amp;&amp;</span> <span class="nx">YAHOO</span><span class="p">.</span><span class="nx">env</span><span class="p">.</span><span class="nx">ua</span><span class="p">.</span><span class="nx">gecko</span><span class="p">)</span> <span class="p">{</span>
                        <span class="k">this</span><span class="p">.</span><span class="nx">showMacGeckoScrollbars</span><span class="p">();</span>
                    <span class="p">}</span>

                    <span class="nx">me</span><span class="p">.</span><span class="nx">dragEvent</span><span class="p">.</span><span class="nx">fire</span><span class="p">(</span><span class="s2">&quot;onDrag&quot;</span><span class="p">,</span> <span class="nx">arguments</span><span class="p">);</span>
                <span class="p">};</span>

                <span class="k">this</span><span class="p">.</span><span class="nx">dd</span><span class="p">.</span><span class="nx">endDrag</span> <span class="o">=</span> <span class="kd">function</span> <span class="p">()</span> <span class="p">{</span>

                    <span class="k">if</span> <span class="p">(</span><span class="nx">YAHOO</span><span class="p">.</span><span class="nx">env</span><span class="p">.</span><span class="nx">ua</span><span class="p">.</span><span class="nx">ie</span> <span class="o">==</span> <span class="mi">6</span><span class="p">)</span> <span class="p">{</span>
                        <span class="nx">Dom</span><span class="p">.</span><span class="nx">removeClass</span><span class="p">(</span><span class="nx">me</span><span class="p">.</span><span class="nx">element</span><span class="p">,</span><span class="s2">&quot;drag&quot;</span><span class="p">);</span>
                    <span class="p">}</span>

                    <span class="nx">me</span><span class="p">.</span><span class="nx">dragEvent</span><span class="p">.</span><span class="nx">fire</span><span class="p">(</span><span class="s2">&quot;endDrag&quot;</span><span class="p">,</span> <span class="nx">arguments</span><span class="p">);</span>
                    <span class="nx">me</span><span class="p">.</span><span class="nx">moveEvent</span><span class="p">.</span><span class="nx">fire</span><span class="p">(</span><span class="nx">me</span><span class="p">.</span><span class="nx">cfg</span><span class="p">.</span><span class="nx">getProperty</span><span class="p">(</span><span class="s2">&quot;xy&quot;</span><span class="p">));</span>

                <span class="p">};</span>

                <span class="k">this</span><span class="p">.</span><span class="nx">dd</span><span class="p">.</span><span class="nx">setHandleElId</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">header</span><span class="p">.</span><span class="nx">id</span><span class="p">);</span>
                <span class="k">this</span><span class="p">.</span><span class="nx">dd</span><span class="p">.</span><span class="nx">addInvalidHandleType</span><span class="p">(</span><span class="s2">&quot;INPUT&quot;</span><span class="p">);</span>
                <span class="k">this</span><span class="p">.</span><span class="nx">dd</span><span class="p">.</span><span class="nx">addInvalidHandleType</span><span class="p">(</span><span class="s2">&quot;SELECT&quot;</span><span class="p">);</span>
                <span class="k">this</span><span class="p">.</span><span class="nx">dd</span><span class="p">.</span><span class="nx">addInvalidHandleType</span><span class="p">(</span><span class="s2">&quot;TEXTAREA&quot;</span><span class="p">);</span>
            <span class="p">}</span>
        <span class="p">},</span>
        
        <span class="cm">/**</span>
<span class="cm">        * Builds the mask that is laid over the document when the Panel is </span>
<span class="cm">        * configured to be modal.</span>
<span class="cm">        * @method buildMask</span>
<span class="cm">        */</span>
        <span class="nx">buildMask</span><span class="o">:</span> <span class="kd">function</span> <span class="p">()</span> <span class="p">{</span>
            <span class="kd">var</span> <span class="nx">oMask</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">mask</span><span class="p">;</span>
            <span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">oMask</span><span class="p">)</span> <span class="p">{</span>
                <span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">m_oMaskTemplate</span><span class="p">)</span> <span class="p">{</span>
                    <span class="nx">m_oMaskTemplate</span> <span class="o">=</span> <span class="nb">document</span><span class="p">.</span><span class="nx">createElement</span><span class="p">(</span><span class="s2">&quot;div&quot;</span><span class="p">);</span>
                    <span class="nx">m_oMaskTemplate</span><span class="p">.</span><span class="nx">className</span> <span class="o">=</span> <span class="s2">&quot;mask&quot;</span><span class="p">;</span>
                    <span class="nx">m_oMaskTemplate</span><span class="p">.</span><span class="nx">innerHTML</span> <span class="o">=</span> <span class="s2">&quot;&amp;#160;&quot;</span><span class="p">;</span>
                <span class="p">}</span>
                <span class="nx">oMask</span> <span class="o">=</span> <span class="nx">m_oMaskTemplate</span><span class="p">.</span><span class="nx">cloneNode</span><span class="p">(</span><span class="kc">true</span><span class="p">);</span>
                <span class="nx">oMask</span><span class="p">.</span><span class="nx">id</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">id</span> <span class="o">+</span> <span class="s2">&quot;_mask&quot;</span><span class="p">;</span>

                <span class="nb">document</span><span class="p">.</span><span class="nx">body</span><span class="p">.</span><span class="nx">insertBefore</span><span class="p">(</span><span class="nx">oMask</span><span class="p">,</span> <span class="nb">document</span><span class="p">.</span><span class="nx">body</span><span class="p">.</span><span class="nx">firstChild</span><span class="p">);</span>

                <span class="k">this</span><span class="p">.</span><span class="nx">mask</span> <span class="o">=</span> <span class="nx">oMask</span><span class="p">;</span>

                <span class="k">if</span> <span class="p">(</span><span class="nx">YAHOO</span><span class="p">.</span><span class="nx">env</span><span class="p">.</span><span class="nx">ua</span><span class="p">.</span><span class="nx">gecko</span> <span class="o">&amp;&amp;</span> <span class="k">this</span><span class="p">.</span><span class="nx">platform</span> <span class="o">==</span> <span class="s2">&quot;mac&quot;</span><span class="p">)</span> <span class="p">{</span>
                    <span class="nx">Dom</span><span class="p">.</span><span class="nx">addClass</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">mask</span><span class="p">,</span> <span class="s2">&quot;block-scrollbars&quot;</span><span class="p">);</span>
                <span class="p">}</span>

                <span class="c1">// Stack mask based on the element zindex</span>
                <span class="k">this</span><span class="p">.</span><span class="nx">stackMask</span><span class="p">();</span>
            <span class="p">}</span>
        <span class="p">},</span>

        <span class="cm">/**</span>
<span class="cm">        * Hides the modality mask.</span>
<span class="cm">        * @method hideMask</span>
<span class="cm">        */</span>
        <span class="nx">hideMask</span><span class="o">:</span> <span class="kd">function</span> <span class="p">()</span> <span class="p">{</span>
            <span class="k">if</span> <span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">cfg</span><span class="p">.</span><span class="nx">getProperty</span><span class="p">(</span><span class="s2">&quot;modal&quot;</span><span class="p">)</span> <span class="o">&amp;&amp;</span> <span class="k">this</span><span class="p">.</span><span class="nx">mask</span> <span class="o">&amp;&amp;</span> <span class="k">this</span><span class="p">.</span><span class="nx">beforeHideMaskEvent</span><span class="p">.</span><span class="nx">fire</span><span class="p">())</span> <span class="p">{</span>
                <span class="k">this</span><span class="p">.</span><span class="nx">mask</span><span class="p">.</span><span class="nx">style</span><span class="p">.</span><span class="nx">display</span> <span class="o">=</span> <span class="s2">&quot;none&quot;</span><span class="p">;</span>
                <span class="nx">Dom</span><span class="p">.</span><span class="nx">removeClass</span><span class="p">(</span><span class="nb">document</span><span class="p">.</span><span class="nx">body</span><span class="p">,</span> <span class="s2">&quot;masked&quot;</span><span class="p">);</span>
                <span class="k">this</span><span class="p">.</span><span class="nx">hideMaskEvent</span><span class="p">.</span><span class="nx">fire</span><span class="p">();</span>
            <span class="p">}</span>
        <span class="p">},</span>

        <span class="cm">/**</span>
<span class="cm">        * Shows the modality mask.</span>
<span class="cm">        * @method showMask</span>
<span class="cm">        */</span>
        <span class="nx">showMask</span><span class="o">:</span> <span class="kd">function</span> <span class="p">()</span> <span class="p">{</span>
            <span class="k">if</span> <span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">cfg</span><span class="p">.</span><span class="nx">getProperty</span><span class="p">(</span><span class="s2">&quot;modal&quot;</span><span class="p">)</span> <span class="o">&amp;&amp;</span> <span class="k">this</span><span class="p">.</span><span class="nx">mask</span> <span class="o">&amp;&amp;</span> <span class="k">this</span><span class="p">.</span><span class="nx">beforeShowMaskEvent</span><span class="p">.</span><span class="nx">fire</span><span class="p">())</span> <span class="p">{</span>
                <span class="nx">Dom</span><span class="p">.</span><span class="nx">addClass</span><span class="p">(</span><span class="nb">document</span><span class="p">.</span><span class="nx">body</span><span class="p">,</span> <span class="s2">&quot;masked&quot;</span><span class="p">);</span>
                <span class="k">this</span><span class="p">.</span><span class="nx">sizeMask</span><span class="p">();</span>
                <span class="k">this</span><span class="p">.</span><span class="nx">mask</span><span class="p">.</span><span class="nx">style</span><span class="p">.</span><span class="nx">display</span> <span class="o">=</span> <span class="s2">&quot;block&quot;</span><span class="p">;</span>
                <span class="k">this</span><span class="p">.</span><span class="nx">showMaskEvent</span><span class="p">.</span><span class="nx">fire</span><span class="p">();</span>
            <span class="p">}</span>
        <span class="p">},</span>

        <span class="cm">/**</span>
<span class="cm">        * Sets the size of the modality mask to cover the entire scrollable </span>
<span class="cm">        * area of the document</span>
<span class="cm">        * @method sizeMask</span>
<span class="cm">        */</span>
        <span class="nx">sizeMask</span><span class="o">:</span> <span class="kd">function</span> <span class="p">()</span> <span class="p">{</span>
            <span class="k">if</span> <span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">mask</span><span class="p">)</span> <span class="p">{</span>

                <span class="c1">// Shrink mask first, so it doesn&#39;t affect the document size.</span>
                <span class="kd">var</span> <span class="nx">mask</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">mask</span><span class="p">,</span>
                    <span class="nx">viewWidth</span> <span class="o">=</span> <span class="nx">Dom</span><span class="p">.</span><span class="nx">getViewportWidth</span><span class="p">(),</span>
                    <span class="nx">viewHeight</span> <span class="o">=</span> <span class="nx">Dom</span><span class="p">.</span><span class="nx">getViewportHeight</span><span class="p">();</span>

                <span class="k">if</span> <span class="p">(</span><span class="nx">mask</span><span class="p">.</span><span class="nx">offsetHeight</span> <span class="o">&gt;</span> <span class="nx">viewHeight</span><span class="p">)</span> <span class="p">{</span>
                    <span class="nx">mask</span><span class="p">.</span><span class="nx">style</span><span class="p">.</span><span class="nx">height</span> <span class="o">=</span> <span class="nx">viewHeight</span> <span class="o">+</span> <span class="s2">&quot;px&quot;</span><span class="p">;</span>
                <span class="p">}</span>

                <span class="k">if</span> <span class="p">(</span><span class="nx">mask</span><span class="p">.</span><span class="nx">offsetWidth</span> <span class="o">&gt;</span> <span class="nx">viewWidth</span><span class="p">)</span> <span class="p">{</span>
                    <span class="nx">mask</span><span class="p">.</span><span class="nx">style</span><span class="p">.</span><span class="nx">width</span> <span class="o">=</span> <span class="nx">viewWidth</span> <span class="o">+</span> <span class="s2">&quot;px&quot;</span><span class="p">;</span>
                <span class="p">}</span>

                <span class="c1">// Then size it to the document</span>
                <span class="nx">mask</span><span class="p">.</span><span class="nx">style</span><span class="p">.</span><span class="nx">height</span> <span class="o">=</span> <span class="nx">Dom</span><span class="p">.</span><span class="nx">getDocumentHeight</span><span class="p">()</span> <span class="o">+</span> <span class="s2">&quot;px&quot;</span><span class="p">;</span>
                <span class="nx">mask</span><span class="p">.</span><span class="nx">style</span><span class="p">.</span><span class="nx">width</span> <span class="o">=</span> <span class="nx">Dom</span><span class="p">.</span><span class="nx">getDocumentWidth</span><span class="p">()</span> <span class="o">+</span> <span class="s2">&quot;px&quot;</span><span class="p">;</span>
            <span class="p">}</span>
        <span class="p">},</span>

        <span class="cm">/**</span>
<span class="cm">         * Sets the zindex of the mask, if it exists, based on the zindex of </span>
<span class="cm">         * the Panel element. The zindex of the mask is set to be one less </span>
<span class="cm">         * than the Panel element&#39;s zindex.</span>
<span class="cm">         * </span>
<span class="cm">         * &lt;p&gt;NOTE: This method will not bump up the zindex of the Panel</span>
<span class="cm">         * to ensure that the mask has a non-negative zindex. If you require the</span>
<span class="cm">         * mask zindex to be 0 or higher, the zindex of the Panel </span>
<span class="cm">         * should be set to a value higher than 0, before this method is called.</span>
<span class="cm">         * &lt;/p&gt;</span>
<span class="cm">         * @method stackMask</span>
<span class="cm">         */</span>
        <span class="nx">stackMask</span><span class="o">:</span> <span class="kd">function</span><span class="p">()</span> <span class="p">{</span>
            <span class="k">if</span> <span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">mask</span><span class="p">)</span> <span class="p">{</span>
                <span class="kd">var</span> <span class="nx">panelZ</span> <span class="o">=</span> <span class="nx">Dom</span><span class="p">.</span><span class="nx">getStyle</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">element</span><span class="p">,</span> <span class="s2">&quot;zIndex&quot;</span><span class="p">);</span>
                <span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">YAHOO</span><span class="p">.</span><span class="nx">lang</span><span class="p">.</span><span class="nx">isUndefined</span><span class="p">(</span><span class="nx">panelZ</span><span class="p">)</span> <span class="o">&amp;&amp;</span> <span class="o">!</span><span class="nb">isNaN</span><span class="p">(</span><span class="nx">panelZ</span><span class="p">))</span> <span class="p">{</span>
                    <span class="nx">Dom</span><span class="p">.</span><span class="nx">setStyle</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">mask</span><span class="p">,</span> <span class="s2">&quot;zIndex&quot;</span><span class="p">,</span> <span class="nx">panelZ</span> <span class="o">-</span> <span class="mi">1</span><span class="p">);</span>
                <span class="p">}</span>
            <span class="p">}</span>
        <span class="p">},</span>

        <span class="cm">/**</span>
<span class="cm">        * Renders the Panel by inserting the elements that are not already in </span>
<span class="cm">        * the main Panel into their correct places. Optionally appends the </span>
<span class="cm">        * Panel to the specified node prior to the render&#39;s execution. NOTE: </span>
<span class="cm">        * For Panels without existing markup, the appendToNode argument is </span>
<span class="cm">        * REQUIRED. If this argument is ommitted and the current element is </span>
<span class="cm">        * not present in the document, the function will return false, </span>
<span class="cm">        * indicating that the render was a failure.</span>
<span class="cm">        * @method render</span>
<span class="cm">        * @param {String} appendToNode The element id to which the Module </span>
<span class="cm">        * should be appended to prior to rendering &lt;em&gt;OR&lt;/em&gt;</span>
<span class="cm">        * @param {HTMLElement} appendToNode The element to which the Module </span>
<span class="cm">        * should be appended to prior to rendering</span>
<span class="cm">        * @return {boolean} Success or failure of the render</span>
<span class="cm">        */</span>
        <span class="nx">render</span><span class="o">:</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">appendToNode</span><span class="p">)</span> <span class="p">{</span>
            <span class="k">return</span> <span class="nx">Panel</span><span class="p">.</span><span class="nx">superclass</span><span class="p">.</span><span class="nx">render</span><span class="p">.</span><span class="nx">call</span><span class="p">(</span><span class="k">this</span><span class="p">,</span> <span class="nx">appendToNode</span><span class="p">,</span> <span class="k">this</span><span class="p">.</span><span class="nx">innerElement</span><span class="p">);</span>
        <span class="p">},</span>

        <span class="cm">/**</span>
<span class="cm">         * Renders the currently set header into it&#39;s proper position under the </span>
<span class="cm">         * module element. If the module element is not provided, &quot;this.innerElement&quot; </span>
<span class="cm">         * is used.</span>
<span class="cm">         *</span>
<span class="cm">         * @method _renderHeader</span>
<span class="cm">         * @protected</span>
<span class="cm">         * @param {HTMLElement} moduleElement Optional. A reference to the module element</span>
<span class="cm">         */</span>
        <span class="nx">_renderHeader</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">moduleElement</span><span class="p">){</span>
            <span class="nx">moduleElement</span> <span class="o">=</span> <span class="nx">moduleElement</span> <span class="o">||</span> <span class="k">this</span><span class="p">.</span><span class="nx">innerElement</span><span class="p">;</span>
			<span class="nx">Panel</span><span class="p">.</span><span class="nx">superclass</span><span class="p">.</span><span class="nx">_renderHeader</span><span class="p">.</span><span class="nx">call</span><span class="p">(</span><span class="k">this</span><span class="p">,</span> <span class="nx">moduleElement</span><span class="p">);</span>
        <span class="p">},</span>

        <span class="cm">/**</span>
<span class="cm">         * Renders the currently set body into it&#39;s proper position under the </span>
<span class="cm">         * module element. If the module element is not provided, &quot;this.innerElement&quot; </span>
<span class="cm">         * is used.</span>
<span class="cm">         * </span>
<span class="cm">         * @method _renderBody</span>
<span class="cm">         * @protected</span>
<span class="cm">         * @param {HTMLElement} moduleElement Optional. A reference to the module element.</span>
<span class="cm">         */</span>
        <span class="nx">_renderBody</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">moduleElement</span><span class="p">){</span>
            <span class="nx">moduleElement</span> <span class="o">=</span> <span class="nx">moduleElement</span> <span class="o">||</span> <span class="k">this</span><span class="p">.</span><span class="nx">innerElement</span><span class="p">;</span>
            <span class="nx">Panel</span><span class="p">.</span><span class="nx">superclass</span><span class="p">.</span><span class="nx">_renderBody</span><span class="p">.</span><span class="nx">call</span><span class="p">(</span><span class="k">this</span><span class="p">,</span> <span class="nx">moduleElement</span><span class="p">);</span>
        <span class="p">},</span>

        <span class="cm">/**</span>
<span class="cm">         * Renders the currently set footer into it&#39;s proper position under the </span>
<span class="cm">         * module element. If the module element is not provided, &quot;this.innerElement&quot; </span>
<span class="cm">         * is used.</span>
<span class="cm">         *</span>
<span class="cm">         * @method _renderFooter</span>
<span class="cm">         * @protected</span>
<span class="cm">         * @param {HTMLElement} moduleElement Optional. A reference to the module element</span>
<span class="cm">         */</span>
        <span class="nx">_renderFooter</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">moduleElement</span><span class="p">){</span>
            <span class="nx">moduleElement</span> <span class="o">=</span> <span class="nx">moduleElement</span> <span class="o">||</span> <span class="k">this</span><span class="p">.</span><span class="nx">innerElement</span><span class="p">;</span>
            <span class="nx">Panel</span><span class="p">.</span><span class="nx">superclass</span><span class="p">.</span><span class="nx">_renderFooter</span><span class="p">.</span><span class="nx">call</span><span class="p">(</span><span class="k">this</span><span class="p">,</span> <span class="nx">moduleElement</span><span class="p">);</span>
        <span class="p">},</span>

        <span class="cm">/**</span>
<span class="cm">        * Removes the Panel element from the DOM and sets all child elements</span>
<span class="cm">        * to null.</span>
<span class="cm">        * @method destroy</span>
<span class="cm">        * @param {boolean} shallowPurge If true, only the parent element&#39;s DOM event listeners are purged. If false, or not provided, all children are also purged of DOM event listeners. </span>
<span class="cm">        * NOTE: The flag is a &quot;shallowPurge&quot; flag, as opposed to what may be a more intuitive &quot;purgeChildren&quot; flag to maintain backwards compatibility with behavior prior to 2.9.0.</span>
<span class="cm">        */</span>
        <span class="nx">destroy</span><span class="o">:</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">shallowPurge</span><span class="p">)</span> <span class="p">{</span>
            <span class="nx">Overlay</span><span class="p">.</span><span class="nx">windowResizeEvent</span><span class="p">.</span><span class="nx">unsubscribe</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">sizeMask</span><span class="p">,</span> <span class="k">this</span><span class="p">);</span>
            <span class="k">this</span><span class="p">.</span><span class="nx">removeMask</span><span class="p">();</span>
            <span class="k">if</span> <span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">close</span><span class="p">)</span> <span class="p">{</span>
                <span class="nx">Event</span><span class="p">.</span><span class="nx">purgeElement</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">close</span><span class="p">);</span>
            <span class="p">}</span>
            <span class="nx">Panel</span><span class="p">.</span><span class="nx">superclass</span><span class="p">.</span><span class="nx">destroy</span><span class="p">.</span><span class="nx">call</span><span class="p">(</span><span class="k">this</span><span class="p">,</span> <span class="nx">shallowPurge</span><span class="p">);</span>  
        <span class="p">},</span>

        <span class="cm">/**</span>
<span class="cm">         * Forces the underlay element to be repainted through the application/removal </span>
<span class="cm">         * of a yui-force-redraw class to the underlay element.</span>
<span class="cm">         *</span>
<span class="cm">         * @method forceUnderlayRedraw</span>
<span class="cm">         */</span>
        <span class="nx">forceUnderlayRedraw</span> <span class="o">:</span> <span class="kd">function</span> <span class="p">()</span> <span class="p">{</span>
            <span class="kd">var</span> <span class="nx">u</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">underlay</span><span class="p">;</span>
            <span class="nx">Dom</span><span class="p">.</span><span class="nx">addClass</span><span class="p">(</span><span class="nx">u</span><span class="p">,</span> <span class="s2">&quot;yui-force-redraw&quot;</span><span class="p">);</span>
            <span class="nx">setTimeout</span><span class="p">(</span><span class="kd">function</span><span class="p">(){</span><span class="nx">Dom</span><span class="p">.</span><span class="nx">removeClass</span><span class="p">(</span><span class="nx">u</span><span class="p">,</span> <span class="s2">&quot;yui-force-redraw&quot;</span><span class="p">);},</span> <span class="mi">0</span><span class="p">);</span>
        <span class="p">},</span>

        <span class="cm">/**</span>
<span class="cm">        * Returns a String representation of the object.</span>
<span class="cm">        * @method toString</span>
<span class="cm">        * @return {String} The string representation of the Panel.</span>
<span class="cm">        */</span>
        <span class="nx">toString</span><span class="o">:</span> <span class="kd">function</span> <span class="p">()</span> <span class="p">{</span>
            <span class="k">return</span> <span class="s2">&quot;Panel &quot;</span> <span class="o">+</span> <span class="k">this</span><span class="p">.</span><span class="nx">id</span><span class="p">;</span>
        <span class="p">}</span>
    
    <span class="p">});</span>

<span class="p">}());</span>
</pre></div>

                    </div>
			</div>
		</div>
		<div class="yui-b">
            <div class="nav">

                    <div id="moduleList" class="module">
                        <h4>Modules</h4>
                        <ul class="content">
                                <li class=""><a href="module_animation.html" title="animation">animation</a></li>
                                <li class=""><a href="module_autocomplete.html" title="autocomplete">autocomplete</a></li>
                                <li class=""><a href="module_button.html" title="button">button</a></li>
                                <li class=""><a href="module_calendar.html" title="calendar">calendar</a></li>
                                <li class=""><a href="module_carousel.html" title="carousel">carousel</a></li>
                                <li class=""><a href="module_charts.html" title="charts">charts</a></li>
                                <li class=""><a href="module_colorpicker.html" title="colorpicker">colorpicker</a></li>
                                <li class=""><a href="module_connection.html" title="connection">connection</a></li>
                                <li class="selected"><a href="module_container.html" title="container">container</a></li>
                                <li class=""><a href="module_cookie.html" title="cookie">cookie</a></li>
                                <li class=""><a href="module_datasource.html" title="datasource">datasource</a></li>
                                <li class=""><a href="module_datatable.html" title="datatable">datatable</a></li>
                                <li class=""><a href="module_datemath.html" title="datemath">datemath</a></li>
                                <li class=""><a href="module_dom.html" title="dom">dom</a></li>
                                <li class=""><a href="module_dragdrop.html" title="dragdrop">dragdrop</a></li>
                                <li class=""><a href="module_editor.html" title="editor">editor</a></li>
                                <li class=""><a href="module_element.html" title="element">element</a></li>
                                <li class=""><a href="module_element-delegate.html" title="element-delegate">element-delegate</a></li>
                                <li class=""><a href="module_event.html" title="event">event</a></li>
                                <li class=""><a href="module_event-delegate.html" title="event-delegate">event-delegate</a></li>
                                <li class=""><a href="module_event-mouseenter.html" title="event-mouseenter">event-mouseenter</a></li>
                                <li class=""><a href="module_event-simulate.html" title="event-simulate">event-simulate</a></li>
                                <li class=""><a href="module_get.html" title="get">get</a></li>
                                <li class=""><a href="module_history.html" title="history">history</a></li>
                                <li class=""><a href="module_imagecropper.html" title="imagecropper">imagecropper</a></li>
                                <li class=""><a href="module_imageloader.html" title="imageloader">imageloader</a></li>
                                <li class=""><a href="module_json.html" title="json">json</a></li>
                                <li class=""><a href="module_layout.html" title="layout">layout</a></li>
                                <li class=""><a href="module_logger.html" title="logger">logger</a></li>
                                <li class=""><a href="module_menu.html" title="menu">menu</a></li>
                                <li class=""><a href="module_paginator.html" title="paginator">paginator</a></li>
                                <li class=""><a href="module_profiler.html" title="profiler">profiler</a></li>
                                <li class=""><a href="module_profilerviewer.html" title="profilerviewer">profilerviewer</a></li>
                                <li class=""><a href="module_progressbar.html" title="progressbar">progressbar</a></li>
                                <li class=""><a href="module_resize.html" title="resize">resize</a></li>
                                <li class=""><a href="module_selector.html" title="selector">selector</a></li>
                                <li class=""><a href="module_slider.html" title="slider">slider</a></li>
                                <li class=""><a href="module_storage.html" title="Storage">Storage</a></li>
                                <li class=""><a href="module_stylesheet.html" title="stylesheet">stylesheet</a></li>
                                <li class=""><a href="module_swf.html" title="swf">swf</a></li>
                                <li class=""><a href="module_swfdetect.html" title="swfdetect">swfdetect</a></li>
                                <li class=""><a href="module_swfstore.html" title="swfstore">swfstore</a></li>
                                <li class=""><a href="module_tabview.html" title="tabview">tabview</a></li>
                                <li class=""><a href="module_treeview.html" title="treeview">treeview</a></li>
                                <li class=""><a href="module_uploader.html" title="uploader">uploader</a></li>
                                <li class=""><a href="module_yahoo.html" title="yahoo">yahoo</a></li>
                                <li class=""><a href="module_yuiloader.html" title="yuiloader">yuiloader</a></li>
                                <li class=""><a href="module_yuitest.html" title="yuitest">yuitest</a></li>
                        </ul>
                    </div>

                    <div id="classList" class="module">
                        <h4>Classes</h4>
                        <ul class="content">
                                <li class=""><a href="YAHOO.util.Config.html" title="YAHOO.util.Config">YAHOO.util.Config</a></li>
                                <li class=""><a href="YAHOO.widget.ContainerEffect.html" title="YAHOO.widget.ContainerEffect">YAHOO.widget.ContainerEffect</a></li>
                                <li class=""><a href="YAHOO.widget.Dialog.html" title="YAHOO.widget.Dialog">YAHOO.widget.Dialog</a></li>
                                <li class=""><a href="YAHOO.widget.Module.html" title="YAHOO.widget.Module">YAHOO.widget.Module</a></li>
                                <li class=""><a href="YAHOO.widget.Overlay.html" title="YAHOO.widget.Overlay">YAHOO.widget.Overlay</a></li>
                                <li class=""><a href="YAHOO.widget.OverlayManager.html" title="YAHOO.widget.OverlayManager">YAHOO.widget.OverlayManager</a></li>
                                <li class=""><a href="YAHOO.widget.Panel.html" title="YAHOO.widget.Panel">YAHOO.widget.Panel</a></li>
                                <li class=""><a href="YAHOO.widget.SimpleDialog.html" title="YAHOO.widget.SimpleDialog">YAHOO.widget.SimpleDialog</a></li>
                                <li class=""><a href="YAHOO.widget.Tooltip.html" title="YAHOO.widget.Tooltip">YAHOO.widget.Tooltip</a></li>
                        </ul>
                    </div>

                    <div id="fileList" class="module">
                        <h4>Files</h4>
                        <ul class="content">        
                                <li class=""><a href="Config.js.html" title="Config.js">Config.js</a></li>
                                <li class=""><a href="ContainerEffect.js.html" title="ContainerEffect.js">ContainerEffect.js</a></li>
                                <li class=""><a href="Dialog.js.html" title="Dialog.js">Dialog.js</a></li>
                                <li class=""><a href="Module.js.html" title="Module.js">Module.js</a></li>
                                <li class=""><a href="Overlay.js.html" title="Overlay.js">Overlay.js</a></li>
                                <li class=""><a href="OverlayManager.js.html" title="OverlayManager.js">OverlayManager.js</a></li>
                                <li class="selected"><a href="Panel.js.html" title="Panel.js">Panel.js</a></li>
                                <li class=""><a href="SimpleDialog.js.html" title="SimpleDialog.js">SimpleDialog.js</a></li>
                                <li class=""><a href="Tooltip.js.html" title="Tooltip.js">Tooltip.js</a></li>
                        </ul>
                    </div>





            </div>
		</div>
	</div>
	<div id="ft">
        <hr />
        Copyright &copy; 2011 Yahoo! Inc. All rights reserved.
	</div>
</div>
<script type="text/javascript">

    var ALL_YUI_PROPS = [{"access": "private", "host": "YAHOO.widget.OverlayManager", "name": "activeOverlay", "url": "YAHOO.widget.OverlayManager.html#property_activeOverlay", "type": "property"}, {"access": "protected", "host": "YAHOO.widget.Panel", "name": "_addFocusHandlers", "url": "YAHOO.widget.Panel.html#method__addFocusHandlers", "type": "method"}, {"access": "", "host": "YAHOO.util.Config", "name": "addProperty", "url": "YAHOO.util.Config.html#method_addProperty", "type": "method"}, {"access": "protected", "host": "YAHOO.widget.Module", "name": "_addToParent", "url": "YAHOO.widget.Module.html#method__addToParent", "type": "method"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "align", "url": "YAHOO.widget.Overlay.html#method_align", "type": "method"}, {"access": "protected", "host": "YAHOO.widget.Overlay", "name": "_alignOnTrigger", "url": "YAHOO.widget.Overlay.html#method__alignOnTrigger", "type": "method"}, {"access": "", "host": "YAHOO.widget.ContainerEffect", "name": "animateIn", "url": "YAHOO.widget.ContainerEffect.html#method_animateIn", "type": "method"}, {"access": "", "host": "YAHOO.widget.ContainerEffect", "name": "animateOut", "url": "YAHOO.widget.ContainerEffect.html#method_animateOut", "type": "method"}, {"access": "", "host": "YAHOO.widget.ContainerEffect", "name": "animClass", "url": "YAHOO.widget.ContainerEffect.html#property_animClass", "type": "property"}, {"access": "", "host": "YAHOO.widget.Module", "name": "appendEvent", "url": "YAHOO.widget.Module.html#event_appendEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.Module", "name": "appendToBody", "url": "YAHOO.widget.Module.html#method_appendToBody", "type": "method"}, {"access": "", "host": "YAHOO.widget.Module", "name": "appendtodocumentbody", "url": "YAHOO.widget.Module.html#config_appendtodocumentbody", "type": "config"}, {"access": "", "host": "YAHOO.widget.Module", "name": "appendToFooter", "url": "YAHOO.widget.Module.html#method_appendToFooter", "type": "method"}, {"access": "", "host": "YAHOO.widget.Module", "name": "appendToHeader", "url": "YAHOO.widget.Module.html#method_appendToHeader", "type": "method"}, {"access": "", "host": "YAHOO.util.Config", "name": "applyConfig", "url": "YAHOO.util.Config.html#method_applyConfig", "type": "method"}, {"access": "", "host": "YAHOO.widget.Dialog", "name": "asyncSubmitEvent", "url": "YAHOO.widget.Dialog.html#event_asyncSubmitEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.ContainerEffect", "name": "attrIn", "url": "YAHOO.widget.ContainerEffect.html#property_attrIn", "type": "property"}, {"access": "", "host": "YAHOO.widget.ContainerEffect", "name": "attrOut", "url": "YAHOO.widget.ContainerEffect.html#property_attrOut", "type": "property"}, {"access": "", "host": "YAHOO.widget.Tooltip", "name": "autodismissdelay", "url": "YAHOO.widget.Tooltip.html#config_autodismissdelay", "type": "config"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "autofillheight", "url": "YAHOO.widget.Overlay.html#config_autofillheight", "type": "config"}, {"access": "protected", "host": "YAHOO.widget.Overlay", "name": "_autoFillOnHeightChange", "url": "YAHOO.widget.Overlay.html#method__autoFillOnHeightChange", "type": "method"}, {"access": "protected", "host": "YAHOO.widget.Panel", "name": "_autoFillOnHeightChange", "url": "YAHOO.widget.Panel.html#method__autoFillOnHeightChange", "type": "method"}, {"access": "", "host": "YAHOO.widget.Module", "name": "beforeHideEvent", "url": "YAHOO.widget.Module.html#event_beforeHideEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.Panel", "name": "beforeHideMaskEvent", "url": "YAHOO.widget.Panel.html#event_beforeHideMaskEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.Module", "name": "beforeInitEvent", "url": "YAHOO.widget.Module.html#event_beforeInitEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "beforeMoveEvent", "url": "YAHOO.widget.Overlay.html#event_beforeMoveEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.Module", "name": "beforeRenderEvent", "url": "YAHOO.widget.Module.html#event_beforeRenderEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.Module", "name": "beforeShowEvent", "url": "YAHOO.widget.Module.html#event_beforeShowEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.Panel", "name": "beforeShowMaskEvent", "url": "YAHOO.widget.Panel.html#event_beforeShowMaskEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.Dialog", "name": "beforeSubmitEvent", "url": "YAHOO.widget.Dialog.html#event_beforeSubmitEvent", "type": "event"}, {"access": "protected", "host": "YAHOO.widget.OverlayManager", "name": "_bindBlur", "url": "YAHOO.widget.OverlayManager.html#method__bindBlur", "type": "method"}, {"access": "protected", "host": "YAHOO.widget.OverlayManager", "name": "_bindDestroy", "url": "YAHOO.widget.OverlayManager.html#method__bindDestroy", "type": "method"}, {"access": "protected", "host": "YAHOO.widget.OverlayManager", "name": "_bindFocus", "url": "YAHOO.widget.OverlayManager.html#method__bindFocus", "type": "method"}, {"access": "", "host": "YAHOO.widget.OverlayManager", "name": "blurAll", "url": "YAHOO.widget.OverlayManager.html#method_blurAll", "type": "method"}, {"access": "", "host": "YAHOO.widget.Dialog", "name": "blurButtons", "url": "YAHOO.widget.Dialog.html#method_blurButtons", "type": "method"}, {"access": "", "host": "YAHOO.widget.Module", "name": "body", "url": "YAHOO.widget.Module.html#property_body", "type": "property"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "bringToTop", "url": "YAHOO.widget.Overlay.html#method_bringToTop", "type": "method"}, {"access": "", "host": "YAHOO.widget.OverlayManager", "name": "bringToTop", "url": "YAHOO.widget.OverlayManager.html#method_bringToTop", "type": "method"}, {"access": "", "host": "YAHOO.widget.Module", "name": "browser", "url": "YAHOO.widget.Module.html#property_browser", "type": "property"}, {"access": "", "host": "YAHOO.widget.Panel", "name": "buildMask", "url": "YAHOO.widget.Panel.html#method_buildMask", "type": "method"}, {"access": "", "host": "YAHOO.widget.Panel", "name": "buildWrapper", "url": "YAHOO.widget.Panel.html#method_buildWrapper", "type": "method"}, {"access": "", "host": "YAHOO.widget.Dialog", "name": "buttons", "url": "YAHOO.widget.Dialog.html#config_buttons", "type": "config"}, {"access": "", "host": "YAHOO.widget.Module", "name": "cacheEffects", "url": "YAHOO.widget.Module.html#property_cacheEffects", "type": "property"}, {"access": "", "host": "YAHOO.widget.Dialog", "name": "callback", "url": "YAHOO.widget.Dialog.html#property_callback", "type": "property"}, {"access": "", "host": "YAHOO.widget.Dialog", "name": "callback.argument", "url": "YAHOO.widget.Dialog.html#property_callback.argument", "type": "property"}, {"access": "", "host": "YAHOO.widget.Dialog", "name": "callback.failure", "url": "YAHOO.widget.Dialog.html#property_callback.failure", "type": "property"}, {"access": "", "host": "YAHOO.widget.Dialog", "name": "callback.success", "url": "YAHOO.widget.Dialog.html#property_callback.success", "type": "property"}, {"access": "", "host": "YAHOO.widget.Dialog", "name": "callback.upload", "url": "YAHOO.widget.Dialog.html#property_callback.upload", "type": "property"}, {"access": "", "host": "YAHOO.widget.Dialog", "name": "cancel", "url": "YAHOO.widget.Dialog.html#method_cancel", "type": "method"}, {"access": "", "host": "YAHOO.widget.Dialog", "name": "cancelEvent", "url": "YAHOO.widget.Dialog.html#event_cancelEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "center", "url": "YAHOO.widget.Overlay.html#method_center", "type": "method"}, {"access": "", "host": "YAHOO.widget.Module", "name": "cfg", "url": "YAHOO.widget.Module.html#property_cfg", "type": "property"}, {"access": "", "host": "YAHOO.widget.OverlayManager", "name": "cfg", "url": "YAHOO.widget.OverlayManager.html#property_cfg", "type": "property"}, {"access": "", "host": "YAHOO.widget.Module", "name": "changeBodyEvent", "url": "YAHOO.widget.Module.html#event_changeBodyEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.Module", "name": "changeContentEvent", "url": "YAHOO.widget.Module.html#event_changeContentEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.Module", "name": "changeFooterEvent", "url": "YAHOO.widget.Module.html#event_changeFooterEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.Module", "name": "changeHeaderEvent", "url": "YAHOO.widget.Module.html#event_changeHeaderEvent", "type": "event"}, {"access": "", "host": "YAHOO.util.Config", "name": "checkBoolean", "url": "YAHOO.util.Config.html#method_checkBoolean", "type": "method"}, {"access": "", "host": "YAHOO.util.Config", "name": "checkNumber", "url": "YAHOO.util.Config.html#method_checkNumber", "type": "method"}, {"access": "", "host": "YAHOO.widget.Panel", "name": "close", "url": "YAHOO.widget.Panel.html#config_close", "type": "config"}, {"access": "private", "host": "YAHOO.widget.OverlayManager", "name": "compareZIndexDesc", "url": "YAHOO.widget.OverlayManager.html#method_compareZIndexDesc", "type": "method"}, {"access": "private", "host": "YAHOO.util.Config", "name": "config", "url": "YAHOO.util.Config.html#property_config", "type": "property"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "configAutoFillHeight", "url": "YAHOO.widget.Overlay.html#method_configAutoFillHeight", "type": "method"}, {"access": "", "host": "YAHOO.widget.Dialog", "name": "configButtons", "url": "YAHOO.widget.Dialog.html#method_configButtons", "type": "method"}, {"access": "", "host": "YAHOO.util.Config", "name": "configChangedEvent", "url": "YAHOO.util.Config.html#event_configChangedEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.Dialog", "name": "configClose", "url": "YAHOO.widget.Dialog.html#method_configClose", "type": "method"}, {"access": "", "host": "YAHOO.widget.Panel", "name": "configClose", "url": "YAHOO.widget.Panel.html#method_configClose", "type": "method"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "configConstrainToViewport", "url": "YAHOO.widget.Overlay.html#method_configConstrainToViewport", "type": "method"}, {"access": "", "host": "YAHOO.widget.Tooltip", "name": "configContainer", "url": "YAHOO.widget.Tooltip.html#method_configContainer", "type": "method"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "configContext", "url": "YAHOO.widget.Overlay.html#method_configContext", "type": "method"}, {"access": "", "host": "YAHOO.widget.Tooltip", "name": "configContext", "url": "YAHOO.widget.Tooltip.html#method_configContext", "type": "method"}, {"access": "", "host": "YAHOO.widget.Panel", "name": "configDraggable", "url": "YAHOO.widget.Panel.html#method_configDraggable", "type": "method"}, {"access": "", "host": "YAHOO.widget.Module", "name": "configEffect", "url": "YAHOO.widget.Module.html#method_configEffect", "type": "method"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "configFixedCenter", "url": "YAHOO.widget.Overlay.html#method_configFixedCenter", "type": "method"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "configHeight", "url": "YAHOO.widget.Overlay.html#method_configHeight", "type": "method"}, {"access": "", "host": "YAHOO.widget.Panel", "name": "configHeight", "url": "YAHOO.widget.Panel.html#method_configHeight", "type": "method"}, {"access": "", "host": "YAHOO.widget.SimpleDialog", "name": "configIcon", "url": "YAHOO.widget.SimpleDialog.html#method_configIcon", "type": "method"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "configIframe", "url": "YAHOO.widget.Overlay.html#method_configIframe", "type": "method"}, {"access": "", "host": "YAHOO.widget.Panel", "name": "configKeyListeners", "url": "YAHOO.widget.Panel.html#method_configKeyListeners", "type": "method"}, {"access": "", "host": "YAHOO.widget.Panel", "name": "configModal", "url": "YAHOO.widget.Panel.html#method_configModal", "type": "method"}, {"access": "", "host": "YAHOO.widget.Module", "name": "configMonitorResize", "url": "YAHOO.widget.Module.html#method_configMonitorResize", "type": "method"}, {"access": "", "host": "YAHOO.widget.Dialog", "name": "configPostMethod", "url": "YAHOO.widget.Dialog.html#method_configPostMethod", "type": "method"}, {"access": "", "host": "YAHOO.widget.Panel", "name": "configStrings", "url": "YAHOO.widget.Panel.html#method_configStrings", "type": "method"}, {"access": "", "host": "YAHOO.widget.SimpleDialog", "name": "configText", "url": "YAHOO.widget.SimpleDialog.html#method_configText", "type": "method"}, {"access": "", "host": "YAHOO.widget.Tooltip", "name": "configText", "url": "YAHOO.widget.Tooltip.html#method_configText", "type": "method"}, {"access": "", "host": "YAHOO.widget.Panel", "name": "configUnderlay", "url": "YAHOO.widget.Panel.html#method_configUnderlay", "type": "method"}, {"access": "", "host": "YAHOO.widget.Module", "name": "configVisible", "url": "YAHOO.widget.Module.html#method_configVisible", "type": "method"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "configVisible", "url": "YAHOO.widget.Overlay.html#method_configVisible", "type": "method"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "configWidth", "url": "YAHOO.widget.Overlay.html#method_configWidth", "type": "method"}, {"access": "", "host": "YAHOO.widget.Panel", "name": "configWidth", "url": "YAHOO.widget.Panel.html#method_configWidth", "type": "method"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "configX", "url": "YAHOO.widget.Overlay.html#method_configX", "type": "method"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "configXY", "url": "YAHOO.widget.Overlay.html#method_configXY", "type": "method"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "configY", "url": "YAHOO.widget.Overlay.html#method_configY", "type": "method"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "configzIndex", "url": "YAHOO.widget.Overlay.html#method_configzIndex", "type": "method"}, {"access": "", "host": "YAHOO.widget.Panel", "name": "configzIndex", "url": "YAHOO.widget.Panel.html#method_configzIndex", "type": "method"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "constraintoviewport", "url": "YAHOO.widget.Overlay.html#config_constraintoviewport", "type": "config"}, {"access": "", "host": "YAHOO.widget.Tooltip", "name": "container", "url": "YAHOO.widget.Tooltip.html#config_container", "type": "config"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "context", "url": "YAHOO.widget.Overlay.html#config_context", "type": "config"}, {"access": "", "host": "YAHOO.widget.Tooltip", "name": "context", "url": "YAHOO.widget.Tooltip.html#config_context", "type": "config"}, {"access": "", "host": "YAHOO.widget.Tooltip", "name": "contextMouseOutEvent", "url": "YAHOO.widget.Tooltip.html#event_contextMouseOutEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.Tooltip", "name": "contextMouseOverEvent", "url": "YAHOO.widget.Tooltip.html#event_contextMouseOverEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.Tooltip", "name": "contextTriggerEvent", "url": "YAHOO.widget.Tooltip.html#event_contextTriggerEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "CONTEXT_TRIGGERS", "url": "YAHOO.widget.Overlay.html#property_CONTEXT_TRIGGERS", "type": "property"}, {"access": "", "host": "YAHOO.widget.Module", "name": "contructor", "url": "YAHOO.widget.Module.html#property_contructor", "type": "property"}, {"access": "", "host": "YAHOO.widget.OverlayManager", "name": "contructor", "url": "YAHOO.widget.OverlayManager.html#property_contructor", "type": "property"}, {"access": "protected", "host": "YAHOO.widget.Module", "name": "_createEffects", "url": "YAHOO.widget.Module.html#method__createEffects", "type": "method"}, {"access": "private", "host": "YAHOO.widget.Panel", "name": "_createHiddenFocusElement", "url": "YAHOO.widget.Panel.html#method__createHiddenFocusElement", "type": "method"}, {"access": "", "host": "YAHOO.widget.Panel", "name": "dd", "url": "YAHOO.widget.Panel.html#property_dd", "type": "property"}, {"access": "private", "host": "YAHOO.widget.Dialog", "name": "DEFAULT_CONFIG", "url": "YAHOO.widget.Dialog.html#property_DEFAULT_CONFIG", "type": "property"}, {"access": "private", "host": "YAHOO.widget.Module", "name": "DEFAULT_CONFIG", "url": "YAHOO.widget.Module.html#property_DEFAULT_CONFIG", "type": "property"}, {"access": "private", "host": "YAHOO.widget.Overlay", "name": "DEFAULT_CONFIG", "url": "YAHOO.widget.Overlay.html#property_DEFAULT_CONFIG", "type": "property"}, {"access": "private", "host": "YAHOO.widget.Panel", "name": "DEFAULT_CONFIG", "url": "YAHOO.widget.Panel.html#property_DEFAULT_CONFIG", "type": "property"}, {"access": "private", "host": "YAHOO.widget.SimpleDialog", "name": "DEFAULT_CONFIG", "url": "YAHOO.widget.SimpleDialog.html#property_DEFAULT_CONFIG", "type": "property"}, {"access": "private", "host": "YAHOO.widget.Tooltip", "name": "DEFAULT_CONFIG", "url": "YAHOO.widget.Tooltip.html#property_DEFAULT_CONFIG", "type": "property"}, {"access": "", "host": "YAHOO.util.Config", "name": "destroy", "url": "YAHOO.util.Config.html#method_destroy", "type": "method"}, {"access": "", "host": "YAHOO.widget.Dialog", "name": "destroy", "url": "YAHOO.widget.Dialog.html#method_destroy", "type": "method"}, {"access": "", "host": "YAHOO.widget.Module", "name": "destroy", "url": "YAHOO.widget.Module.html#method_destroy", "type": "method"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "destroy", "url": "YAHOO.widget.Overlay.html#method_destroy", "type": "method"}, {"access": "", "host": "YAHOO.widget.Panel", "name": "destroy", "url": "YAHOO.widget.Panel.html#method_destroy", "type": "method"}, {"access": "", "host": "YAHOO.widget.Tooltip", "name": "destroy", "url": "YAHOO.widget.Tooltip.html#method_destroy", "type": "method"}, {"access": "", "host": "YAHOO.widget.Module", "name": "destroyEvent", "url": "YAHOO.widget.Module.html#event_destroyEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.Tooltip", "name": "disabled", "url": "YAHOO.widget.Tooltip.html#config_disabled", "type": "config"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "doCenterOnDOMEvent", "url": "YAHOO.widget.Overlay.html#method_doCenterOnDOMEvent", "type": "method"}, {"access": "protected", "host": "YAHOO.widget.Dialog", "name": "_doClose", "url": "YAHOO.widget.Dialog.html#method__doClose", "type": "method"}, {"access": "protected", "host": "YAHOO.widget.Panel", "name": "_doClose", "url": "YAHOO.widget.Panel.html#method__doClose", "type": "method"}, {"access": "", "host": "YAHOO.widget.Tooltip", "name": "doHide", "url": "YAHOO.widget.Tooltip.html#method_doHide", "type": "method"}, {"access": "", "host": "YAHOO.widget.Tooltip", "name": "doShow", "url": "YAHOO.widget.Tooltip.html#method_doShow", "type": "method"}, {"access": "", "host": "YAHOO.widget.Dialog", "name": "doSubmit", "url": "YAHOO.widget.Dialog.html#method_doSubmit", "type": "method"}, {"access": "", "host": "YAHOO.widget.Panel", "name": "dragEvent", "url": "YAHOO.widget.Panel.html#event_dragEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.Panel", "name": "draggable", "url": "YAHOO.widget.Panel.html#config_draggable", "type": "config"}, {"access": "", "host": "YAHOO.widget.Panel", "name": "dragOnly", "url": "YAHOO.widget.Panel.html#config_dragOnly", "type": "config"}, {"access": "", "host": "YAHOO.widget.Module", "name": "effect", "url": "YAHOO.widget.Module.html#config_effect", "type": "config"}, {"access": "", "host": "YAHOO.widget.Module", "name": "element", "url": "YAHOO.widget.Module.html#property_element", "type": "property"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "enforceConstraints", "url": "YAHOO.widget.Overlay.html#method_enforceConstraints", "type": "method"}, {"access": "private", "host": "YAHOO.util.Config", "name": "eventQueue", "url": "YAHOO.util.Config.html#property_eventQueue", "type": "property"}, {"access": "private", "host": "YAHOO.widget.Dialog", "name": "EVENT_TYPES", "url": "YAHOO.widget.Dialog.html#property_EVENT_TYPES", "type": "property"}, {"access": "private", "host": "YAHOO.widget.Module", "name": "EVENT_TYPES", "url": "YAHOO.widget.Module.html#property_EVENT_TYPES", "type": "property"}, {"access": "private", "host": "YAHOO.widget.Overlay", "name": "EVENT_TYPES", "url": "YAHOO.widget.Overlay.html#property_EVENT_TYPES", "type": "property"}, {"access": "private", "host": "YAHOO.widget.Panel", "name": "EVENT_TYPES", "url": "YAHOO.widget.Panel.html#property_EVENT_TYPES", "type": "property"}, {"access": "private", "host": "YAHOO.widget.Tooltip", "name": "EVENT_TYPES", "url": "YAHOO.widget.Tooltip.html#property_EVENT_TYPES", "type": "property"}, {"access": "", "host": "YAHOO.widget.ContainerEffect", "name": "FADE", "url": "YAHOO.widget.ContainerEffect.html#method_FADE", "type": "method"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "fillHeight", "url": "YAHOO.widget.Overlay.html#method_fillHeight", "type": "method"}, {"access": "", "host": "YAHOO.widget.OverlayManager", "name": "find", "url": "YAHOO.widget.OverlayManager.html#method_find", "type": "method"}, {"access": "private", "host": "YAHOO.widget.Overlay", "name": "_findTriggerCE", "url": "YAHOO.widget.Overlay.html#method__findTriggerCE", "type": "method"}, {"access": "private", "host": "YAHOO.util.Config", "name": "fireEvent", "url": "YAHOO.util.Config.html#method_fireEvent", "type": "method"}, {"access": "", "host": "YAHOO.util.Config", "name": "fireQueue", "url": "YAHOO.util.Config.html#method_fireQueue", "type": "method"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "fitsInViewport", "url": "YAHOO.widget.Overlay.html#method_fitsInViewport", "type": "method"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "fixedcenter", "url": "YAHOO.widget.Overlay.html#config_fixedcenter", "type": "config"}, {"access": "", "host": "YAHOO.widget.OverlayManager", "name": "focus", "url": "YAHOO.widget.OverlayManager.html#method_focus", "type": "method"}, {"access": "", "host": "YAHOO.widget.Dialog", "name": "focusDefaultButton", "url": "YAHOO.widget.Dialog.html#method_focusDefaultButton", "type": "method"}, {"access": "", "host": "YAHOO.widget.OverlayManager", "name": "focusevent", "url": "YAHOO.widget.OverlayManager.html#config_focusevent", "type": "config"}, {"access": "", "host": "YAHOO.widget.Dialog", "name": "focusFirst", "url": "YAHOO.widget.Dialog.html#method_focusFirst", "type": "method"}, {"access": "", "host": "YAHOO.widget.Panel", "name": "focusFirst", "url": "YAHOO.widget.Panel.html#method_focusFirst", "type": "method"}, {"access": "", "host": "YAHOO.widget.Dialog", "name": "focusFirstButton", "url": "YAHOO.widget.Dialog.html#method_focusFirstButton", "type": "method"}, {"access": "", "host": "YAHOO.widget.Panel", "name": "_focusFirstModal", "url": "YAHOO.widget.Panel.html#method__focusFirstModal", "type": "method"}, {"access": "", "host": "YAHOO.widget.Dialog", "name": "focusLast", "url": "YAHOO.widget.Dialog.html#method_focusLast", "type": "method"}, {"access": "", "host": "YAHOO.widget.Panel", "name": "focusLast", "url": "YAHOO.widget.Panel.html#method_focusLast", "type": "method"}, {"access": "", "host": "YAHOO.widget.Dialog", "name": "focusLastButton", "url": "YAHOO.widget.Dialog.html#method_focusLastButton", "type": "method"}, {"access": "", "host": "YAHOO.widget.Panel", "name": "_focusOnShow", "url": "YAHOO.widget.Panel.html#method__focusOnShow", "type": "method"}, {"access": "", "host": "YAHOO.widget.Module", "name": "footer", "url": "YAHOO.widget.Module.html#property_footer", "type": "property"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "forceContainerRedraw", "url": "YAHOO.widget.Overlay.html#method_forceContainerRedraw", "type": "method"}, {"access": "", "host": "YAHOO.widget.Panel", "name": "forceUnderlayRedraw", "url": "YAHOO.widget.Panel.html#method_forceUnderlayRedraw", "type": "method"}, {"access": "", "host": "YAHOO.widget.Tooltip", "name": "forceUnderlayRedraw", "url": "YAHOO.widget.Tooltip.html#method_forceUnderlayRedraw", "type": "method"}, {"access": "", "host": "YAHOO.widget.Dialog", "name": "form", "url": "YAHOO.widget.Dialog.html#property_form", "type": "property"}, {"access": "", "host": "YAHOO.widget.Dialog", "name": "formSubmitEvent", "url": "YAHOO.widget.Dialog.html#event_formSubmitEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.OverlayManager", "name": "getActive", "url": "YAHOO.widget.OverlayManager.html#method_getActive", "type": "method"}, {"access": "private", "host": "YAHOO.widget.Dialog", "name": "_getButton", "url": "YAHOO.widget.Dialog.html#method__getButton", "type": "method"}, {"access": "", "host": "YAHOO.widget.Dialog", "name": "getButtons", "url": "YAHOO.widget.Dialog.html#method_getButtons", "type": "method"}, {"access": "private", "host": "YAHOO.widget.Overlay", "name": "_getComputedHeight", "url": "YAHOO.widget.Overlay.html#method__getComputedHeight", "type": "method"}, {"access": "", "host": "YAHOO.util.Config", "name": "getConfig", "url": "YAHOO.util.Config.html#method_getConfig", "type": "method"}, {"access": "protected", "host": "YAHOO.widget.Overlay", "name": "_getConstrainedPos", "url": "YAHOO.widget.Overlay.html#method__getConstrainedPos", "type": "method"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "getConstrainedX", "url": "YAHOO.widget.Overlay.html#method_getConstrainedX", "type": "method"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "getConstrainedXY", "url": "YAHOO.widget.Overlay.html#method_getConstrainedXY", "type": "method"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "getConstrainedY", "url": "YAHOO.widget.Overlay.html#method_getConstrainedY", "type": "method"}, {"access": "", "host": "YAHOO.widget.Dialog", "name": "getData", "url": "YAHOO.widget.Dialog.html#method_getData", "type": "method"}, {"access": "", "host": "YAHOO.widget.Panel", "name": "getFocusableElements", "url": "YAHOO.widget.Panel.html#method_getFocusableElements", "type": "method"}, {"access": "protected", "host": "YAHOO.widget.Dialog", "name": "_getFormAttributes", "url": "YAHOO.widget.Dialog.html#method__getFormAttributes", "type": "method"}, {"access": "private", "host": "YAHOO.widget.Overlay", "name": "_getPreciseHeight", "url": "YAHOO.widget.Overlay.html#method__getPreciseHeight", "type": "method"}, {"access": "", "host": "YAHOO.util.Config", "name": "getProperty", "url": "YAHOO.util.Config.html#method_getProperty", "type": "method"}, {"access": "", "host": "YAHOO.widget.ContainerEffect", "name": "handleCompleteAnimateIn", "url": "YAHOO.widget.ContainerEffect.html#method_handleCompleteAnimateIn", "type": "method"}, {"access": "", "host": "YAHOO.widget.ContainerEffect", "name": "handleCompleteAnimateOut", "url": "YAHOO.widget.ContainerEffect.html#method_handleCompleteAnimateOut", "type": "method"}, {"access": "", "host": "YAHOO.widget.ContainerEffect", "name": "handleStartAnimateIn", "url": "YAHOO.widget.ContainerEffect.html#method_handleStartAnimateIn", "type": "method"}, {"access": "", "host": "YAHOO.widget.ContainerEffect", "name": "handleStartAnimateOut", "url": "YAHOO.widget.ContainerEffect.html#method_handleStartAnimateOut", "type": "method"}, {"access": "", "host": "YAHOO.widget.ContainerEffect", "name": "handleTweenAnimateIn", "url": "YAHOO.widget.ContainerEffect.html#method_handleTweenAnimateIn", "type": "method"}, {"access": "", "host": "YAHOO.widget.ContainerEffect", "name": "handleTweenAnimateOut", "url": "YAHOO.widget.ContainerEffect.html#method_handleTweenAnimateOut", "type": "method"}, {"access": "", "host": "YAHOO.widget.Module", "name": "header", "url": "YAHOO.widget.Module.html#property_header", "type": "property"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "height", "url": "YAHOO.widget.Overlay.html#config_height", "type": "config"}, {"access": "", "host": "YAHOO.widget.Module", "name": "hide", "url": "YAHOO.widget.Module.html#method_hide", "type": "method"}, {"access": "", "host": "YAHOO.widget.Dialog", "name": "hideaftersubmit", "url": "YAHOO.widget.Dialog.html#config_hideaftersubmit", "type": "config"}, {"access": "", "host": "YAHOO.widget.OverlayManager", "name": "hideAll", "url": "YAHOO.widget.OverlayManager.html#method_hideAll", "type": "method"}, {"access": "", "host": "YAHOO.widget.Tooltip", "name": "hidedelay", "url": "YAHOO.widget.Tooltip.html#config_hidedelay", "type": "config"}, {"access": "", "host": "YAHOO.widget.Module", "name": "hideEvent", "url": "YAHOO.widget.Module.html#event_hideEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "hideIframe", "url": "YAHOO.widget.Overlay.html#method_hideIframe", "type": "method"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "hideMacGeckoScrollbars", "url": "YAHOO.widget.Overlay.html#method_hideMacGeckoScrollbars", "type": "method"}, {"access": "", "host": "YAHOO.widget.Panel", "name": "hideMask", "url": "YAHOO.widget.Panel.html#method_hideMask", "type": "method"}, {"access": "", "host": "YAHOO.widget.Panel", "name": "hideMaskEvent", "url": "YAHOO.widget.Panel.html#event_hideMaskEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.SimpleDialog", "name": "icon", "url": "YAHOO.widget.SimpleDialog.html#config_icon", "type": "config"}, {"access": "", "host": "YAHOO.widget.Module", "name": "id", "url": "YAHOO.widget.Module.html#property_id", "type": "property"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "iframe", "url": "YAHOO.widget.Overlay.html#config_iframe", "type": "config"}, {"access": "", "host": "YAHOO.widget.Module", "name": "imageRoot", "url": "YAHOO.widget.Module.html#property_imageRoot", "type": "property"}, {"access": "", "host": "YAHOO.util.Config", "name": "init", "url": "YAHOO.util.Config.html#method_init", "type": "method"}, {"access": "", "host": "YAHOO.widget.ContainerEffect", "name": "init", "url": "YAHOO.widget.ContainerEffect.html#method_init", "type": "method"}, {"access": "", "host": "YAHOO.widget.Dialog", "name": "init", "url": "YAHOO.widget.Dialog.html#method_init", "type": "method"}, {"access": "", "host": "YAHOO.widget.Module", "name": "init", "url": "YAHOO.widget.Module.html#method_init", "type": "method"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "init", "url": "YAHOO.widget.Overlay.html#method_init", "type": "method"}, {"access": "", "host": "YAHOO.widget.OverlayManager", "name": "init", "url": "YAHOO.widget.OverlayManager.html#method_init", "type": "method"}, {"access": "", "host": "YAHOO.widget.Panel", "name": "init", "url": "YAHOO.widget.Panel.html#method_init", "type": "method"}, {"access": "", "host": "YAHOO.widget.SimpleDialog", "name": "init", "url": "YAHOO.widget.SimpleDialog.html#method_init", "type": "method"}, {"access": "", "host": "YAHOO.widget.Tooltip", "name": "init", "url": "YAHOO.widget.Tooltip.html#method_init", "type": "method"}, {"access": "", "host": "YAHOO.widget.Dialog", "name": "initDefaultConfig", "url": "YAHOO.widget.Dialog.html#method_initDefaultConfig", "type": "method"}, {"access": "", "host": "YAHOO.widget.Module", "name": "initDefaultConfig", "url": "YAHOO.widget.Module.html#method_initDefaultConfig", "type": "method"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "initDefaultConfig", "url": "YAHOO.widget.Overlay.html#method_initDefaultConfig", "type": "method"}, {"access": "", "host": "YAHOO.widget.OverlayManager", "name": "initDefaultConfig", "url": "YAHOO.widget.OverlayManager.html#method_initDefaultConfig", "type": "method"}, {"access": "", "host": "YAHOO.widget.Panel", "name": "initDefaultConfig", "url": "YAHOO.widget.Panel.html#method_initDefaultConfig", "type": "method"}, {"access": "", "host": "YAHOO.widget.SimpleDialog", "name": "initDefaultConfig", "url": "YAHOO.widget.SimpleDialog.html#method_initDefaultConfig", "type": "method"}, {"access": "", "host": "YAHOO.widget.Tooltip", "name": "initDefaultConfig", "url": "YAHOO.widget.Tooltip.html#method_initDefaultConfig", "type": "method"}, {"access": "", "host": "YAHOO.widget.Module", "name": "initEvent", "url": "YAHOO.widget.Module.html#event_initEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.Dialog", "name": "initEvents", "url": "YAHOO.widget.Dialog.html#method_initEvents", "type": "method"}, {"access": "", "host": "YAHOO.widget.Module", "name": "initEvents", "url": "YAHOO.widget.Module.html#method_initEvents", "type": "method"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "initEvents", "url": "YAHOO.widget.Overlay.html#method_initEvents", "type": "method"}, {"access": "", "host": "YAHOO.widget.Panel", "name": "initEvents", "url": "YAHOO.widget.Panel.html#method_initEvents", "type": "method"}, {"access": "", "host": "YAHOO.widget.Tooltip", "name": "initEvents", "url": "YAHOO.widget.Tooltip.html#method_initEvents", "type": "method"}, {"access": "private", "host": "YAHOO.util.Config", "name": "initialConfig", "url": "YAHOO.util.Config.html#property_initialConfig", "type": "property"}, {"access": "protected", "host": "YAHOO.widget.Module", "name": "_initResizeMonitor", "url": "YAHOO.widget.Module.html#method__initResizeMonitor", "type": "method"}, {"access": "", "host": "YAHOO.widget.Module", "name": "initResizeMonitor", "url": "YAHOO.widget.Module.html#method_initResizeMonitor", "type": "method"}, {"access": "", "host": "YAHOO.widget.Module", "name": "isSecure", "url": "YAHOO.widget.Module.html#property_isSecure", "type": "property"}, {"access": "", "host": "YAHOO.widget.Panel", "name": "keylisteners", "url": "YAHOO.widget.Panel.html#config_keylisteners", "type": "config"}, {"access": "", "host": "YAHOO.widget.ContainerEffect", "name": "lastFrameOnStop", "url": "YAHOO.widget.ContainerEffect.html#property_lastFrameOnStop", "type": "property"}, {"access": "protected", "host": "YAHOO.widget.OverlayManager", "name": "_manageBlur", "url": "YAHOO.widget.OverlayManager.html#method__manageBlur", "type": "method"}, {"access": "protected", "host": "YAHOO.widget.OverlayManager", "name": "_manageFocus", "url": "YAHOO.widget.OverlayManager.html#method__manageFocus", "type": "method"}, {"access": "", "host": "YAHOO.widget.Dialog", "name": "manualSubmitEvent", "url": "YAHOO.widget.Dialog.html#event_manualSubmitEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.Panel", "name": "modal", "url": "YAHOO.widget.Panel.html#config_modal", "type": "config"}, {"access": "", "host": "YAHOO.widget.Module", "name": "monitorresize", "url": "YAHOO.widget.Module.html#config_monitorresize", "type": "config"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "moveEvent", "url": "YAHOO.widget.Overlay.html#event_moveEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "moveTo", "url": "YAHOO.widget.Overlay.html#method_moveTo", "type": "method"}, {"access": "", "host": "YAHOO.widget.Tooltip", "name": "onContextMouseMove", "url": "YAHOO.widget.Tooltip.html#method_onContextMouseMove", "type": "method"}, {"access": "", "host": "YAHOO.widget.Tooltip", "name": "onContextMouseOut", "url": "YAHOO.widget.Tooltip.html#method_onContextMouseOut", "type": "method"}, {"access": "", "host": "YAHOO.widget.Tooltip", "name": "onContextMouseOver", "url": "YAHOO.widget.Tooltip.html#method_onContextMouseOver", "type": "method"}, {"access": "", "host": "YAHOO.widget.Module", "name": "onDomResize", "url": "YAHOO.widget.Module.html#method_onDomResize", "type": "method"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "onDomResize", "url": "YAHOO.widget.Overlay.html#method_onDomResize", "type": "method"}, {"access": "private", "host": "YAHOO.widget.Panel", "name": "_onElementFocus", "url": "YAHOO.widget.Panel.html#method__onElementFocus", "type": "method"}, {"access": "private", "host": "YAHOO.widget.OverlayManager", "name": "_onOverlayBlurHandler", "url": "YAHOO.widget.OverlayManager.html#method__onOverlayBlurHandler", "type": "method"}, {"access": "private", "host": "YAHOO.widget.OverlayManager", "name": "_onOverlayDestroy", "url": "YAHOO.widget.OverlayManager.html#method__onOverlayDestroy", "type": "method"}, {"access": "private", "host": "YAHOO.widget.OverlayManager", "name": "_onOverlayElementFocus", "url": "YAHOO.widget.OverlayManager.html#method__onOverlayElementFocus", "type": "method"}, {"access": "private", "host": "YAHOO.widget.OverlayManager", "name": "_onOverlayFocusHandler", "url": "YAHOO.widget.OverlayManager.html#method__onOverlayFocusHandler", "type": "method"}, {"access": "", "host": "YAHOO.widget.Tooltip", "name": "onRender", "url": "YAHOO.widget.Tooltip.html#method_onRender", "type": "method"}, {"access": "", "host": "YAHOO.util.Config", "name": "outputEventQueue", "url": "YAHOO.util.Config.html#method_outputEventQueue", "type": "method"}, {"access": "", "host": "YAHOO.widget.ContainerEffect", "name": "overlay", "url": "YAHOO.widget.ContainerEffect.html#property_overlay", "type": "property"}, {"access": "", "host": "YAHOO.widget.OverlayManager", "name": "OverlayManager.CSS_FOCUSED", "url": "YAHOO.widget.OverlayManager.html#property_OverlayManager.CSS_FOCUSED", "type": "property"}, {"access": "", "host": "YAHOO.widget.OverlayManager", "name": "overlays", "url": "YAHOO.widget.OverlayManager.html#property_overlays", "type": "property"}, {"access": "", "host": "YAHOO.widget.OverlayManager", "name": "overlays", "url": "YAHOO.widget.OverlayManager.html#config_overlays", "type": "config"}, {"access": "", "host": "YAHOO.util.Config", "name": "owner", "url": "YAHOO.util.Config.html#property_owner", "type": "property"}, {"access": "", "host": "YAHOO.widget.Module", "name": "platform", "url": "YAHOO.widget.Module.html#property_platform", "type": "property"}, {"access": "", "host": "YAHOO.widget.Dialog", "name": "postdata", "url": "YAHOO.widget.Dialog.html#config_postdata", "type": "config"}, {"access": "", "host": "YAHOO.widget.Dialog", "name": "postmethod", "url": "YAHOO.widget.Dialog.html#config_postmethod", "type": "config"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "preventcontextoverlap", "url": "YAHOO.widget.Overlay.html#config_preventcontextoverlap", "type": "config"}, {"access": "protected", "host": "YAHOO.widget.Overlay", "name": "_preventOverlap", "url": "YAHOO.widget.Overlay.html#method__preventOverlap", "type": "method"}, {"access": "", "host": "YAHOO.widget.Tooltip", "name": "preventoverlap", "url": "YAHOO.widget.Tooltip.html#config_preventoverlap", "type": "config"}, {"access": "", "host": "YAHOO.widget.Tooltip", "name": "preventOverlay", "url": "YAHOO.widget.Tooltip.html#method_preventOverlay", "type": "method"}, {"access": "protected", "host": "YAHOO.widget.Overlay", "name": "_primeXYFromDOM", "url": "YAHOO.widget.Overlay.html#method__primeXYFromDOM", "type": "method"}, {"access": "protected", "host": "YAHOO.widget.Overlay", "name": "_processTriggers", "url": "YAHOO.widget.Overlay.html#method__processTriggers", "type": "method"}, {"access": "", "host": "YAHOO.util.Config", "name": "queueInProgress", "url": "YAHOO.util.Config.html#property_queueInProgress", "type": "property"}, {"access": "", "host": "YAHOO.util.Config", "name": "queueProperty", "url": "YAHOO.util.Config.html#method_queueProperty", "type": "method"}, {"access": "", "host": "YAHOO.util.Config", "name": "refireEvent", "url": "YAHOO.util.Config.html#method_refireEvent", "type": "method"}, {"access": "", "host": "YAHOO.util.Config", "name": "refresh", "url": "YAHOO.util.Config.html#method_refresh", "type": "method"}, {"access": "", "host": "YAHOO.widget.OverlayManager", "name": "register", "url": "YAHOO.widget.OverlayManager.html#method_register", "type": "method"}, {"access": "", "host": "YAHOO.widget.Panel", "name": "registerDragDrop", "url": "YAHOO.widget.Panel.html#method_registerDragDrop", "type": "method"}, {"access": "", "host": "YAHOO.widget.Dialog", "name": "registerForm", "url": "YAHOO.widget.Dialog.html#method_registerForm", "type": "method"}, {"access": "", "host": "YAHOO.widget.SimpleDialog", "name": "registerForm", "url": "YAHOO.widget.SimpleDialog.html#method_registerForm", "type": "method"}, {"access": "", "host": "YAHOO.widget.OverlayManager", "name": "remove", "url": "YAHOO.widget.OverlayManager.html#method_remove", "type": "method"}, {"access": "protected", "host": "YAHOO.widget.Tooltip", "name": "_removeEventListeners", "url": "YAHOO.widget.Tooltip.html#method__removeEventListeners", "type": "method"}, {"access": "protected", "host": "YAHOO.widget.Panel", "name": "_removeFocusHandlers", "url": "YAHOO.widget.Panel.html#method__removeFocusHandlers", "type": "method"}, {"access": "", "host": "YAHOO.widget.Panel", "name": "removeMask", "url": "YAHOO.widget.Panel.html#method_removeMask", "type": "method"}, {"access": "", "host": "YAHOO.widget.Module", "name": "render", "url": "YAHOO.widget.Module.html#method_render", "type": "method"}, {"access": "", "host": "YAHOO.widget.Panel", "name": "render", "url": "YAHOO.widget.Panel.html#method_render", "type": "method"}, {"access": "protected", "host": "YAHOO.widget.Module", "name": "_renderBody", "url": "YAHOO.widget.Module.html#method__renderBody", "type": "method"}, {"access": "protected", "host": "YAHOO.widget.Panel", "name": "_renderBody", "url": "YAHOO.widget.Panel.html#method__renderBody", "type": "method"}, {"access": "", "host": "YAHOO.widget.Module", "name": "renderEvent", "url": "YAHOO.widget.Module.html#event_renderEvent", "type": "event"}, {"access": "protected", "host": "YAHOO.widget.Module", "name": "_renderFooter", "url": "YAHOO.widget.Module.html#method__renderFooter", "type": "method"}, {"access": "protected", "host": "YAHOO.widget.Panel", "name": "_renderFooter", "url": "YAHOO.widget.Panel.html#method__renderFooter", "type": "method"}, {"access": "protected", "host": "YAHOO.widget.Module", "name": "_renderHeader", "url": "YAHOO.widget.Module.html#method__renderHeader", "type": "method"}, {"access": "protected", "host": "YAHOO.widget.Panel", "name": "_renderHeader", "url": "YAHOO.widget.Panel.html#method__renderHeader", "type": "method"}, {"access": "", "host": "YAHOO.util.Config", "name": "resetProperty", "url": "YAHOO.util.Config.html#method_resetProperty", "type": "method"}, {"access": "", "host": "YAHOO.widget.Module", "name": "setBody", "url": "YAHOO.widget.Module.html#method_setBody", "type": "method"}, {"access": "", "host": "YAHOO.widget.SimpleDialog", "name": "setBody", "url": "YAHOO.widget.SimpleDialog.html#method_setBody", "type": "method"}, {"access": "protected", "host": "YAHOO.widget.Overlay", "name": "_setDomVisibility", "url": "YAHOO.widget.Overlay.html#method__setDomVisibility", "type": "method"}, {"access": "", "host": "YAHOO.widget.Dialog", "name": "setFirstLastFocusable", "url": "YAHOO.widget.Dialog.html#method_setFirstLastFocusable", "type": "method"}, {"access": "", "host": "YAHOO.widget.Panel", "name": "setFirstLastFocusable", "url": "YAHOO.widget.Panel.html#method_setFirstLastFocusable", "type": "method"}, {"access": "", "host": "YAHOO.widget.Module", "name": "setFooter", "url": "YAHOO.widget.Module.html#method_setFooter", "type": "method"}, {"access": "", "host": "YAHOO.widget.Module", "name": "setHeader", "url": "YAHOO.widget.Module.html#method_setHeader", "type": "method"}, {"access": "", "host": "YAHOO.util.Config", "name": "setProperty", "url": "YAHOO.util.Config.html#method_setProperty", "type": "method"}, {"access": "protected", "host": "YAHOO.widget.Dialog", "name": "_setTabLoop", "url": "YAHOO.widget.Dialog.html#method__setTabLoop", "type": "method"}, {"access": "", "host": "YAHOO.widget.Dialog", "name": "setTabLoop", "url": "YAHOO.widget.Dialog.html#method_setTabLoop", "type": "method"}, {"access": "protected", "host": "YAHOO.widget.Panel", "name": "_setTabLoop", "url": "YAHOO.widget.Panel.html#method__setTabLoop", "type": "method"}, {"access": "", "host": "YAHOO.widget.Panel", "name": "setTabLoop", "url": "YAHOO.widget.Panel.html#method_setTabLoop", "type": "method"}, {"access": "", "host": "YAHOO.widget.Module", "name": "show", "url": "YAHOO.widget.Module.html#method_show", "type": "method"}, {"access": "", "host": "YAHOO.widget.OverlayManager", "name": "showAll", "url": "YAHOO.widget.OverlayManager.html#method_showAll", "type": "method"}, {"access": "", "host": "YAHOO.widget.Tooltip", "name": "showdelay", "url": "YAHOO.widget.Tooltip.html#config_showdelay", "type": "config"}, {"access": "", "host": "YAHOO.widget.Module", "name": "showEvent", "url": "YAHOO.widget.Module.html#event_showEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "showIframe", "url": "YAHOO.widget.Overlay.html#method_showIframe", "type": "method"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "showMacGeckoScrollbars", "url": "YAHOO.widget.Overlay.html#method_showMacGeckoScrollbars", "type": "method"}, {"access": "", "host": "YAHOO.widget.Panel", "name": "showMask", "url": "YAHOO.widget.Panel.html#method_showMask", "type": "method"}, {"access": "", "host": "YAHOO.widget.Panel", "name": "showMaskEvent", "url": "YAHOO.widget.Panel.html#event_showMaskEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.Tooltip", "name": "showProcId", "url": "YAHOO.widget.Tooltip.html#property_showProcId", "type": "property"}, {"access": "", "host": "YAHOO.widget.Panel", "name": "sizeMask", "url": "YAHOO.widget.Panel.html#method_sizeMask", "type": "method"}, {"access": "", "host": "YAHOO.widget.Panel", "name": "sizeUnderlay", "url": "YAHOO.widget.Panel.html#method_sizeUnderlay", "type": "method"}, {"access": "", "host": "YAHOO.widget.ContainerEffect", "name": "SLIDE", "url": "YAHOO.widget.ContainerEffect.html#method_SLIDE", "type": "method"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "stackIframe", "url": "YAHOO.widget.Overlay.html#method_stackIframe", "type": "method"}, {"access": "", "host": "YAHOO.widget.Panel", "name": "stackMask", "url": "YAHOO.widget.Panel.html#method_stackMask", "type": "method"}, {"access": "protected", "host": "YAHOO.widget.ContainerEffect", "name": "_stopAnims", "url": "YAHOO.widget.ContainerEffect.html#method__stopAnims", "type": "method"}, {"access": "", "host": "YAHOO.widget.Panel", "name": "strings", "url": "YAHOO.widget.Panel.html#config_strings", "type": "config"}, {"access": "", "host": "YAHOO.widget.Dialog", "name": "submit", "url": "YAHOO.widget.Dialog.html#method_submit", "type": "method"}, {"access": "", "host": "YAHOO.widget.Dialog", "name": "submitEvent", "url": "YAHOO.widget.Dialog.html#event_submitEvent", "type": "event"}, {"access": "protected", "host": "YAHOO.widget.Dialog", "name": "_submitHandler", "url": "YAHOO.widget.Dialog.html#method__submitHandler", "type": "method"}, {"access": "", "host": "YAHOO.util.Config", "name": "subscribeToConfigEvent", "url": "YAHOO.util.Config.html#method_subscribeToConfigEvent", "type": "method"}, {"access": "private", "host": "YAHOO.widget.Module", "name": "_supportsCWResize", "url": "YAHOO.widget.Module.html#method__supportsCWResize", "type": "method"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "syncIframe", "url": "YAHOO.widget.Overlay.html#method_syncIframe", "type": "method"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "syncPosition", "url": "YAHOO.widget.Overlay.html#method_syncPosition", "type": "method"}, {"access": "protected", "host": "YAHOO.widget.OverlayManager", "name": "_syncZIndex", "url": "YAHOO.widget.OverlayManager.html#method__syncZIndex", "type": "method"}, {"access": "", "host": "YAHOO.widget.ContainerEffect", "name": "targetElement", "url": "YAHOO.widget.ContainerEffect.html#property_targetElement", "type": "property"}, {"access": "protected", "host": "YAHOO.widget.Panel", "name": "_testIfFocusable", "url": "YAHOO.widget.Panel.html#method__testIfFocusable", "type": "method"}, {"access": "", "host": "YAHOO.widget.SimpleDialog", "name": "text", "url": "YAHOO.widget.SimpleDialog.html#config_text", "type": "config"}, {"access": "", "host": "YAHOO.widget.Tooltip", "name": "text", "url": "YAHOO.widget.Tooltip.html#config_text", "type": "config"}, {"access": "", "host": "YAHOO.util.Config", "name": "toString", "url": "YAHOO.util.Config.html#method_toString", "type": "method"}, {"access": "", "host": "YAHOO.widget.ContainerEffect", "name": "toString", "url": "YAHOO.widget.ContainerEffect.html#method_toString", "type": "method"}, {"access": "", "host": "YAHOO.widget.Dialog", "name": "toString", "url": "YAHOO.widget.Dialog.html#method_toString", "type": "method"}, {"access": "", "host": "YAHOO.widget.Module", "name": "toString", "url": "YAHOO.widget.Module.html#method_toString", "type": "method"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "toString", "url": "YAHOO.widget.Overlay.html#method_toString", "type": "method"}, {"access": "", "host": "YAHOO.widget.OverlayManager", "name": "toString", "url": "YAHOO.widget.OverlayManager.html#method_toString", "type": "method"}, {"access": "", "host": "YAHOO.widget.Panel", "name": "toString", "url": "YAHOO.widget.Panel.html#method_toString", "type": "method"}, {"access": "", "host": "YAHOO.widget.SimpleDialog", "name": "toString", "url": "YAHOO.widget.SimpleDialog.html#method_toString", "type": "method"}, {"access": "", "host": "YAHOO.widget.Tooltip", "name": "toString", "url": "YAHOO.widget.Tooltip.html#method_toString", "type": "method"}, {"access": "", "host": "YAHOO.widget.Panel", "name": "underlay", "url": "YAHOO.widget.Panel.html#config_underlay", "type": "config"}, {"access": "", "host": "YAHOO.util.Config", "name": "unsubscribeFromConfigEvent", "url": "YAHOO.util.Config.html#method_unsubscribeFromConfigEvent", "type": "method"}, {"access": "", "host": "YAHOO.widget.Dialog", "name": "validate", "url": "YAHOO.widget.Dialog.html#method_validate", "type": "method"}, {"access": "protected", "host": "YAHOO.widget.Overlay", "name": "_validateAutoFillHeight", "url": "YAHOO.widget.Overlay.html#method__validateAutoFillHeight", "type": "method"}, {"access": "", "host": "YAHOO.widget.Module", "name": "visible", "url": "YAHOO.widget.Module.html#config_visible", "type": "config"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "width", "url": "YAHOO.widget.Overlay.html#config_width", "type": "config"}, {"access": "", "host": "YAHOO.widget.Tooltip", "name": "width", "url": "YAHOO.widget.Tooltip.html#config_width", "type": "config"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "x", "url": "YAHOO.widget.Overlay.html#config_x", "type": "config"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "xy", "url": "YAHOO.widget.Overlay.html#config_xy", "type": "config"}, {"access": "", "host": "YAHOO.widget.Tooltip", "name": "xyoffset", "url": "YAHOO.widget.Tooltip.html#config_xyoffset", "type": "config"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "y", "url": "YAHOO.widget.Overlay.html#config_y", "type": "config"}, {"access": "", "host": "YAHOO.util.Config", "name": "YAHOO.util.Config.alreadySubscribed", "url": "YAHOO.util.Config.html#method_YAHOO.util.Config.alreadySubscribed", "type": "method"}, {"access": "private", "host": "YAHOO.util.Config", "name": "YAHOO.util.Config.BOOLEAN_TYPE", "url": "YAHOO.util.Config.html#property_YAHOO.util.Config.BOOLEAN_TYPE", "type": "property"}, {"access": "private", "host": "YAHOO.util.Config", "name": "YAHOO.util.Config.CONFIG_CHANGED_EVENT", "url": "YAHOO.util.Config.html#property_YAHOO.util.Config.CONFIG_CHANGED_EVENT", "type": "property"}, {"access": "", "host": "YAHOO.widget.Dialog", "name": "YAHOO.widget.Dialog.CSS_DIALOG", "url": "YAHOO.widget.Dialog.html#property_YAHOO.widget.Dialog.CSS_DIALOG", "type": "property"}, {"access": "", "host": "YAHOO.widget.Module", "name": "YAHOO.widget.Module.CSS_BODY", "url": "YAHOO.widget.Module.html#property_YAHOO.widget.Module.CSS_BODY", "type": "property"}, {"access": "", "host": "YAHOO.widget.Module", "name": "YAHOO.widget.Module.CSS_FOOTER", "url": "YAHOO.widget.Module.html#property_YAHOO.widget.Module.CSS_FOOTER", "type": "property"}, {"access": "", "host": "YAHOO.widget.Module", "name": "YAHOO.widget.Module.CSS_HEADER", "url": "YAHOO.widget.Module.html#property_YAHOO.widget.Module.CSS_HEADER", "type": "property"}, {"access": "", "host": "YAHOO.widget.Module", "name": "YAHOO.widget.Module.CSS_MODULE", "url": "YAHOO.widget.Module.html#property_YAHOO.widget.Module.CSS_MODULE", "type": "property"}, {"access": "", "host": "YAHOO.widget.Module", "name": "YAHOO.widget.Module.forceDocumentRedraw", "url": "YAHOO.widget.Module.html#method_YAHOO.widget.Module.forceDocumentRedraw", "type": "method"}, {"access": "", "host": "YAHOO.widget.Module", "name": "YAHOO.widget.Module.IMG_ROOT", "url": "YAHOO.widget.Module.html#property_YAHOO.widget.Module.IMG_ROOT", "type": "property"}, {"access": "", "host": "YAHOO.widget.Module", "name": "YAHOO.widget.Module.IMG_ROOT_SSL", "url": "YAHOO.widget.Module.html#property_YAHOO.widget.Module.IMG_ROOT_SSL", "type": "property"}, {"access": "", "host": "YAHOO.widget.Module", "name": "YAHOO.widget.Module.RESIZE_MONITOR_BUFFER", "url": "YAHOO.widget.Module.html#property_YAHOO.widget.Module.RESIZE_MONITOR_BUFFER", "type": "property"}, {"access": "", "host": "YAHOO.widget.Module", "name": "YAHOO.widget.Module.RESIZE_MONITOR_SECURE_URL", "url": "YAHOO.widget.Module.html#property_YAHOO.widget.Module.RESIZE_MONITOR_SECURE_URL", "type": "property"}, {"access": "", "host": "YAHOO.widget.Module", "name": "YAHOO.widget.Module.textResizeEvent", "url": "YAHOO.widget.Module.html#event_YAHOO.widget.Module.textResizeEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "YAHOO.widget.Overlay.BOTTOM_LEFT", "url": "YAHOO.widget.Overlay.html#property_YAHOO.widget.Overlay.BOTTOM_LEFT", "type": "property"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "YAHOO.widget.Overlay.BOTTOM_RIGHT", "url": "YAHOO.widget.Overlay.html#property_YAHOO.widget.Overlay.BOTTOM_RIGHT", "type": "property"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "YAHOO.widget.Overlay.CSS_HIDDEN", "url": "YAHOO.widget.Overlay.html#property_YAHOO.widget.Overlay.CSS_HIDDEN", "type": "property"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "YAHOO.widget.Overlay.CSS_IFRAME", "url": "YAHOO.widget.Overlay.html#property_YAHOO.widget.Overlay.CSS_IFRAME", "type": "property"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "YAHOO.widget.Overlay.CSS_OVERLAY", "url": "YAHOO.widget.Overlay.html#property_YAHOO.widget.Overlay.CSS_OVERLAY", "type": "property"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "YAHOO.widget.Overlay.IFRAME_SRC", "url": "YAHOO.widget.Overlay.html#property_YAHOO.widget.Overlay.IFRAME_SRC", "type": "property"}, {"access": "private", "host": "YAHOO.widget.Overlay", "name": "YAHOO.widget.Overlay._initialized", "url": "YAHOO.widget.Overlay.html#property_YAHOO.widget.Overlay._initialized", "type": "property"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "YAHOO.widget.Overlay.STD_MOD_RE", "url": "YAHOO.widget.Overlay.html#property_YAHOO.widget.Overlay.STD_MOD_RE", "type": "property"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "YAHOO.widget.Overlay.TOP_LEFT", "url": "YAHOO.widget.Overlay.html#property_YAHOO.widget.Overlay.TOP_LEFT", "type": "property"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "YAHOO.widget.Overlay.TOP_RIGHT", "url": "YAHOO.widget.Overlay.html#property_YAHOO.widget.Overlay.TOP_RIGHT", "type": "property"}, {"access": "private", "host": "YAHOO.widget.Overlay", "name": "YAHOO.widget.Overlay._TRIGGER_MAP", "url": "YAHOO.widget.Overlay.html#property_YAHOO.widget.Overlay._TRIGGER_MAP", "type": "property"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "YAHOO.widget.Overlay.VIEWPORT_OFFSET", "url": "YAHOO.widget.Overlay.html#property_YAHOO.widget.Overlay.VIEWPORT_OFFSET", "type": "property"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "YAHOO.widget.Overlay.windowResizeEvent", "url": "YAHOO.widget.Overlay.html#event_YAHOO.widget.Overlay.windowResizeEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "YAHOO.widget.Overlay.windowResizeHandler", "url": "YAHOO.widget.Overlay.html#method_YAHOO.widget.Overlay.windowResizeHandler", "type": "method"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "YAHOO.widget.Overlay.windowScrollEvent", "url": "YAHOO.widget.Overlay.html#event_YAHOO.widget.Overlay.windowScrollEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "YAHOO.widget.Overlay.windowScrollHandler", "url": "YAHOO.widget.Overlay.html#method_YAHOO.widget.Overlay.windowScrollHandler", "type": "method"}, {"access": "", "host": "YAHOO.widget.Panel", "name": "YAHOO.widget.Panel.CSS_PANEL", "url": "YAHOO.widget.Panel.html#property_YAHOO.widget.Panel.CSS_PANEL", "type": "property"}, {"access": "", "host": "YAHOO.widget.Panel", "name": "YAHOO.widget.Panel.CSS_PANEL_CONTAINER", "url": "YAHOO.widget.Panel.html#property_YAHOO.widget.Panel.CSS_PANEL_CONTAINER", "type": "property"}, {"access": "", "host": "YAHOO.widget.Panel", "name": "YAHOO.widget.Panel.FOCUSABLE", "url": "YAHOO.widget.Panel.html#property_YAHOO.widget.Panel.FOCUSABLE", "type": "property"}, {"access": "", "host": "YAHOO.widget.SimpleDialog", "name": "YAHOO.widget.SimpleDialog.CSS_SIMPLEDIALOG", "url": "YAHOO.widget.SimpleDialog.html#property_YAHOO.widget.SimpleDialog.CSS_SIMPLEDIALOG", "type": "property"}, {"access": "", "host": "YAHOO.widget.SimpleDialog", "name": "YAHOO.widget.SimpleDialog.ICON_ALARM", "url": "YAHOO.widget.SimpleDialog.html#property_YAHOO.widget.SimpleDialog.ICON_ALARM", "type": "property"}, {"access": "", "host": "YAHOO.widget.SimpleDialog", "name": "YAHOO.widget.SimpleDialog.ICON_BLOCK", "url": "YAHOO.widget.SimpleDialog.html#property_YAHOO.widget.SimpleDialog.ICON_BLOCK", "type": "property"}, {"access": "", "host": "YAHOO.widget.SimpleDialog", "name": "YAHOO.widget.SimpleDialog.ICON_CSS_CLASSNAME", "url": "YAHOO.widget.SimpleDialog.html#property_YAHOO.widget.SimpleDialog.ICON_CSS_CLASSNAME", "type": "property"}, {"access": "", "host": "YAHOO.widget.SimpleDialog", "name": "YAHOO.widget.SimpleDialog.ICON_HELP", "url": "YAHOO.widget.SimpleDialog.html#property_YAHOO.widget.SimpleDialog.ICON_HELP", "type": "property"}, {"access": "", "host": "YAHOO.widget.SimpleDialog", "name": "YAHOO.widget.SimpleDialog.ICON_INFO", "url": "YAHOO.widget.SimpleDialog.html#property_YAHOO.widget.SimpleDialog.ICON_INFO", "type": "property"}, {"access": "", "host": "YAHOO.widget.SimpleDialog", "name": "YAHOO.widget.SimpleDialog.ICON_TIP", "url": "YAHOO.widget.SimpleDialog.html#property_YAHOO.widget.SimpleDialog.ICON_TIP", "type": "property"}, {"access": "", "host": "YAHOO.widget.SimpleDialog", "name": "YAHOO.widget.SimpleDialog.ICON_WARN", "url": "YAHOO.widget.SimpleDialog.html#property_YAHOO.widget.SimpleDialog.ICON_WARN", "type": "property"}, {"access": "", "host": "YAHOO.widget.Tooltip", "name": "YAHOO.widget.Tooltip.CSS_TOOLTIP", "url": "YAHOO.widget.Tooltip.html#property_YAHOO.widget.Tooltip.CSS_TOOLTIP", "type": "property"}, {"access": "", "host": "YAHOO.widget.Overlay", "name": "zIndex", "url": "YAHOO.widget.Overlay.html#config_zIndex", "type": "config"}];
</script>
</body>
</html>
